Automatic synchronous tuning of narrowband receivers of a wireless location system for voice/traffic channel tracking

ABSTRACT

In a wireless location system, narrowband receivers are used in a mode, known as automatic synchronous or sequential tuning, in which the receivers are tuned sequentially and in unison to a plurality of predefined RF channels. Signal transmissions of interest in these channels are digitally recorded and used in location processing. A location record or report is generated to identify an estimated location of one or more wireless transmitters. The identity of the located transmitter(s) is determined by matching the location record to data indicating which wireless transmitters were in use at a time corresponding to the location record, and which cell sites and RF channels were used by each wireless transmitter. This method is especially suited for voice or traffic channel tracking of wireless mobile transmitters, such as cellular telephones.

CROSS REFERENCE TO RELATED APPLICATIONS

This is a continuation-in-part of U.S. patent application Ser. No.10/005,068, filed on Dec. 5, 2001, entitled “Collision Recovery in aWireless Location System,” now U.S. Pat. No. 6,563,460 which is adivisional of U.S. patent application Ser. No. 09/648,404, filed on Aug.24, 2000, entitled “Antenna Selection Method for a Wireless LocationSystem,” now U.S. Pat. No. 6,400,320 which is a continuation of U.S.patent application Ser. No. 09/227,764, filed on Jan. 8, 1999, entitled“Calibration for Wireless Location System,” now U.S. Pat. No. 6,184,829B1, issued Feb. 6, 2001.

FIELD OF THE INVENTION

The present invention relates generally to methods and apparatus forlocating wireless transmitters, such as those used in analog or digitalcellular systems, personal communications systems (PCS), enhancedspecialized mobile radios (ESMRs), and other types of wirelesscommunications systems. This field is now generally known as wirelesslocation, and has application for Wireless E9-1-1, fleet management, RFoptimization, and other valuable applications.

BACKGROUND OF THE INVENTION

Early work relating to the present invention has been described in U.S.Pat. No. 5,327,144, Jul. 5, 1994, “Cellular Telephone Location System,”which discloses a system for locating cellular telephones using noveltime difference of arrival (TDOA) techniques. Further enhancements ofthe system disclosed in the '144 patent are disclosed in U.S. Pat. No.5,608,410, Mar. 4, 1997, “System for Locating a Source of BurstyTransmissions.” Both patents are owned by the assignee of the currentinvention, and both are incorporated herein by reference. The presentinventors have continued to develop significant enhancements to theoriginal inventive concepts and have developed techniques to furtherimprove the accuracy of Wireless Location Systems while significantlyreducing the cost of these systems.

Over the past few years, the cellular industry has increased the numberof air interface protocols available for use by wireless telephones,increased the number of frequency bands in which wireless or mobiletelephones may operate, and expanded the number of terms that refer orrelate to mobile telephones to include “personal communicationsservices”, “wireless”, and others. The air interface protocols nowinclude AMPS, N-AMPS, TDMA, CDMA, GSM,TACS, ESMR, and others. Thechanges in terminology and increases in the number of air interfaces donot change the basic principles and inventions discovered and enhancedby the inventors. However, in keeping with the current terminology ofthe industry, the inventors now call the system described herein aWireless Location System.

The inventors have conducted extensive experiments with the WirelessLocation System technology disclosed herein to demonstrate both theviability and value of the technology. For example, several experimentswere conducted during several months of 1995 and 1996 in the cities ofPhiladelphia and Baltimore to verify the system's ability to mitigatemultipath in large urban environments. Then, in 1996 the inventorsconstructed a system in Houston that was used to test the technology'seffectiveness in that area and its ability to interface directly withE9-1-1 systems. Then, in 1997, the system was tested in a 350 squaremile area in New Jersey and was used to locate real 9-1-1 calls fromreal people in trouble. Since that time, the system test has beenexpanded to include 125 cell sites covering an area of over 2,000 squaremiles. During all of these tests, techniques discussed and disclosedherein were tested for effectiveness and further developed, and thesystem has been demonstrated to overcome the limitations of otherapproaches that have been proposed for locating wireless telephones.Indeed, as of December, 1998, no other Wireless Location System has beeninstalled anywhere else in the world that is capable of locating live9-1-1 callers. The innovation of the Wireless Location System disclosedherein has been acknowledged in the wireless industry by the extensiveamount of media coverage given to the system's capabilities, as well asby awards. For example, the prestigious Wireless Appy Award was grantedto the system by the Cellular Telephone Industry Association in October,1997, and the Christopher Columbus Fellowship Foundation and DiscoverMagazine found the Wireless Location System to be one of the top 4innovations of 1998 out of 4,000 nominations submitted.

The value and importance of the Wireless Location System has beenacknowledged by the wireless communications industry. In June 1996, theFederal Communications Commission issued requirements for the wirelesscommunications industry to deploy location systems for use in locatingwireless 9-1-1 callers, with a deadline of October 2001. The location ofwireless E9-1-1 callers will save response time, save lives, and saveenormous costs because of reduced use of emergency responses resources.In addition, numerous surveys and studies have concluded that variouswireless applications, such as location sensitive billing, fleetmanagement, and others, will have great commercial values in the comingyears.

Background on Wireless Communications Systems

There are many different types of air interface protocols used forwireless communications systems. These protocols are used in differentfrequency bands, both in the U.S. and internationally. The frequencyband does not impact the Wireless Location System's effectiveness atlocating wireless telephones.

All air interface protocols use two types of “channels”. The first typeincludes control channels that are used for conveying information aboutthe wireless telephone or transmitter, for initiating or terminatingcalls, or for transferring bursty data. For example, some types of shortmessaging services transfer data over the control channel. In differentair interfaces, control channels are known by different terminology, butthe use of the control channels in each air interface is similar.Control channels generally have identifying information about thewireless telephone or transmitter contained in the transmission.

The second type includes voice channels that are typically used forconveying voice communications over the air interface. These channelsare only used after a call has been set up using the control channels.Voice channels will typically use dedicated resources within thewireless communications system whereas control channels will use sharedresources. This distinction will generally make the use of controlchannels for wireless location purposes more cost effective than the useof voice channels, although there are some applications for whichregular location on the voice channel is desired. Voice channelsgenerally do not have identifying information about the wirelesstelephone or transmitter in the transmission. Some of the differences inthe air interface protocols are discussed below:

AMPS—This is the original air interface protocol used for cellularcommunications in the U.S. In the AMPS system, separate dedicatedchannels are assigned for use by control channels (RCC). According tothe TIA/EIA Standard IS-553A, every control channel block must begin atcellular channel 333 or 334, but the block may be of variable length. Inthe U.S., by convention, the AMPS control channel block is 21 channelswide, but the use of a 26-channel block is also known. A reverse voicechannel (RVC) may occupy any channel that is not assigned to a controlchannel. The control channel modulation is FSK (frequency shift keying),while the voice channels are modulated using FM (frequency modulation).

N-AMPS—This air interface is an expansion of the AMPS air interfaceprotocol, and is defined in EIA/TIA standard IS-88. The control channelsare substantially the same as for AMPS, however, the voice channels aredifferent. The voice channels occupy less than 10 KHz of bandwidth,versus the 30 KHz used for AMPS, and the modulation is FM.

TDMA—This interface is also known D-AMPS, and is defined in EIA/TIAstandard IS-136. This air interface is characterized by the use of bothfrequency and time separation. Control channels are known as DigitalControl Channels (DCCH) and are transmitted in bursts in timeslotsassigned for use by DCCH. Unlike AMPS, DCCH may be assigned anywhere inthe frequency band, although there are generally some frequencyassignments that are more attractive than others based upon the use ofprobability blocks. Voice channels are known as Digital Traffic Channels(DTC). DCCH and DTC may occupy the same frequency assignments, but notthe same timeslot assignment in a given frequency assignment. DCCH andDTC use the same modulation scheme, known as π/4 DQPSK (differentialquadrature phase shift keying). In the cellular band, a carrier may useboth the AMPS and TDMA protocols, as long as the frequency assignmentsfor each protocol are kept separated.

CDMA—This air interface is defined by EIA/TIA standard IS-95A. This airinterface is characterized by the use of both frequency and codeseparation. However, because adjacent cell sites may use the samefrequency sets, CDMA is also characterized by very careful powercontrol. This careful power control leads to a situation known to thoseskilled in the art as the near-far problem, which makes wirelesslocation difficult for most approaches to function properly. Controlchannels are known as Access Channels, and voice channels are known asTraffic Channels. Access and Traffic Channels may share the samefrequency band, but are separated by code. Access and Traffic Channelsuse the same modulation scheme, known as OQPSK.

GSM—This air interface is defined by the international standard GlobalSystem for Mobile Communications. Like TDMA, GSM is characterized by theuse of both frequency and time separation. The channel bandwidth is 200KHz, which is wider than the 30 KHz used for TDMA. Control channels areknown as Standalone Dedicated Control Channels (SDCCH), and aretransmitted in bursts in timeslots assigned for use by SDCCH. SDCCH maybe assigned anywhere in the frequency band. Voice channels are known asTraffic Channels (TCH). SDCCH and TCH may occupy the same frequencyassignments, but not the same timeslot assignment in a given frequencyassignment. SDCCH and TCH use the same modulation scheme, known as GMSK.

Within this specification the reference to any one of the air interfacesshall automatically refer to all of the air interfaces, unless specifiedotherwise. Additionally, a reference to control channels or voicechannels shall refer to all types of control or voice channels, whateverthe preferred terminology for a particular air interface. Finally, thereare many more types of air interfaces used throughout the world, andthere is no intent to exclude any air interface from the inventiveconcepts described within this specification. Indeed, those skilled inthe art will recognize other interfaces used elsewhere are derivativesof or similar in class to those described above.

The preferred embodiments of the inventions disclosed herein have manyadvantages over other techniques for locating wireless telephones. Forexample, some of these other techniques involve adding GPS functionalityto telephones, which requires that significant changes be made to thetelephones. The preferred embodiments disclosed herein do not requireany changes to wireless telephones, and so they can be used inconnection with the current installed base of over 65 million wirelesstelephones in the U.S. and 250 million wireless telephones worldwide.

SUMMARY OF THE INVENTION

The present invention relates to an embodiment of a Wireless LocationSystem in which narrowband receivers are deployed in the SignalCollection Systems, or SCS's. One mode of using such narrowbandreceivers, described below, is known as random tuning because thereceivers can be directed to any RF channel on command from the system.The present invention relates to an alternative mode, which may bereferred to as automatic sequential tuning or automatic synchronoustuning (the latter expression is now preferred). This inventionovercomes an inherent limitation of random tuning—that of scarcereceiver resource management with multiple, asynchronous, and randomlocation requests. As can be seen, a receiver network of 1 to nnarrowband receivers can have a maximum simultaneous location capacityof n if every receiver in the network is involved in the location. Sincethe receiver must rest on a particular frequency, or set of frequencies,for a period of time, and since the time to retune the receiver isnon-zero, the actual simultaneous capacity and latency of the locationsystem varies unpredictably using random tuning. This problem can bepartially overcome by adding more receivers or limiting the number ofreceivers involved in any location estimation. Additional receivercapacity is costly and a priori limitation of the number of receivers inany location limits the system's ability to overcome the effects ofmultipath propagation, thus limiting the accuracy of the system.

In the simplest form of this invention, the automatic synchronousmethod, every receiver in the geographical area is tuned simultaneouslyto the same radio frequency according to a pre-established plan. In apreferred implementation, at each frequency step a global tasking listis consulted to see if radio energy needs to be collected at this step.In effect this method allows resource contention resolution betweenmultiple, unpredictable, asynchronous location requests making thesystem latency static at all load levels. The actual area covered by asingle Wireless Location System is determined by geography, radiopropagation, and network layout.

In an alternate embodiment of an automatic synchronous or sequentialtuning method in accordance with the present invention, the WLSsequences through every cell site and RF channel, digitizing andrecording samples of the RF energy present on that channel into acircular ring buffer of 1 to n samples. The WLS can then immediatelyperform location processing from the stored samples or combine storedsamples and the next sample taken during the synchronous receiver tuningcycle while preserving the static latency of the WLS at all load levels.

In sum, the present invention provides a way of using receivers having abandwidth of less than the bandwidth of the associated wirelesscommunications system to minimize latency without degradation of thelocation accuracy at all load levels.

Other details of the invention are described below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1 and 1A schematically depict a Wireless Location System.

FIG. 2 schematically depicts a Signal Collection System (SCS) 10.

FIG. 2A schematically depicts a receiver module 10-2 employed by theSignal Collection System.

FIGS. 2B and 2C schematically depict alternative ways of coupling thereceiver module(s) 10-2 to the antennas 10-1.

FIG. 2C-1 is a flowchart of a process employed by the Wireless LocationSystem when using narrowband receiver modules.

FIG. 2C-2 illustrates resource contention in a narrowband receivernetwork.

FIG. 2C-3 depicts an example of Synchronous Tuning with multiple freeretuning periods.

FIG. 2C-4 is a flowchart of an automatic synchronous tuning method forcontrolling narrowband receivers in accordance with the presentinvention.

FIG. 2D schematically depicts a DSP module 10-3 employed in the SignalCollection System.

FIG. 2E is a flowchart of the operation of the DSP module(s) 10-3, andFIG. 2E-1 is a flowchart of the process employed by the DSP modules fordetecting active channels.

FIG. 2F schematically depicts a Control and Communications Module 10-5.

FIGS. 2G-2J depict aspects of the presently preferred SCS calibrationmethods. FIG. 2G is a schematic illustration of baselines and errorvalues used to explain an external calibration method in accordance withthe present invention. FIG. 2H is a flowchart of an internal calibrationmethod. FIG. 2I is an exemplary transfer function of an AMPS controlchannel and FIG. 2J depicts an exemplary comb signal.

FIGS. 2K and 2L are flowcharts of two methods for monitoring performanceof a Wireless Location System.

FIG. 3 schematically depicts a TDOA Location Processor 12.

FIG. 3A depicts the structure of an exemplary network map maintained bythe TLP controllers.

FIGS. 4 and 4A schematically depict different aspects of an ApplicationsProcessor 14.

FIG. 5 is a flowchart of a central station-based location processingmethod.

FIG. 6 is a flowchart of a station-based location processing method.

FIG. 7 is a flowchart of a method for determining, for each transmissionfor which a location is desired, whether to employ central orstation-based processing.

FIG. 8 is a flowchart of a dynamic process used to select cooperatingantennas and SCS's 10 used in location processing.

FIG. 9 is diagram that is referred to below in explaining a method forselecting a candidate list of SCS's and antennas using a predeterminedset of criteria.

FIGS. 10A and 10B are flowcharts of alternative methods for increasingthe bandwidth of a transmitted signal to improve location accuracy.

FIGS. 11A-11C are signal flow diagrams and FIG. 11D is a flowchart, andthey are used to explain an inventive method for combining multiplestatistically independent location estimates to provide an estimate withimproved accuracy.

FIGS. 12A and 12B are a block diagram and a graph, respectively, forexplaining a bandwidth synthesis method.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The Wireless Location System (WLS) operates as a passive overlay to awireless communications system, such as a cellular, PCS, or ESMR system,although the concepts are not limited to just those types ofcommunications systems. Wireless communications systems are generallynot suitable for locating wireless devices because the designs of thewireless transmitters and cell sites do not include the necessaryfunctionality to achieve accurate location. Accurate location in thisapplication is defined as accuracy of 100 to 400 feet RMS (root meansquare). This is distinguished from the location accuracy that can beachieved by existing cell sites, which is generally limited to theradius of the cell site. In general, cell sites are not designed orprogrammed to cooperate between and among themselves to determinewireless transmitter location. Additionally, wireless transmitters suchas cellular and PCS telephones are designed to be low cost and thereforegenerally do not have locating capability built-in. The WLS is designedto be a low cost addition to a wireless communications system thatinvolves minimal changes to cell sites and no changes at all to standardwireless transmitters. The WLS is passive because it does not containtransmitters, and therefore cannot cause interference of any kind to thewireless communications system. The WLS uses only its own specializedreceivers at cell sites or other receiving locations.

Overview of Wireless Location System

As shown in FIG. 1, the Wireless Location System has four major kinds ofsubsystems: the Signal Collection Systems (SCS's) 10, the TDOA LocationProcessors (TLP's) 12, the Application Processors (AP's) 14, and theNetwork Operations Console (NOC) 16. Each SCS is responsible forreceiving the RF signals transmitted by the wireless transmitters onboth control channels and voice channels. In general, each SCS ispreferably installed at a wireless carrier's cell site, and thereforeoperates in parallel to a base station. Each TLP 12 is responsible formanaging a network of SCS's 10 and for providing a centralized pool ofdigital signal processing (DSP) resources that can be used in thelocation calculations. The SCS's 10 and the TLP's 12 operate together todetermine the location of the wireless transmitters, as will bediscussed more fully below. Digital signal processing is the preferablemanner in which to process radio signals because DSP's are relativelylow cost, provide consistent performance, and are easily re-programmableto handle many different tasks. Both the SCS's 10 and TLP's 12 contain asignificant amount of DSP resources, and the software in these systemscan operate dynamically to determine where to perform a particularprocessing function based upon tradeoffs in processing time,communications time, queuing time, and cost. Each TLP 12 existscentrally primarily to reduce the overall cost of implementing the WLS,although the techniques discussed herein are not limited to thepreferred architecture shown. That is, DSP resources can be relocatedwithin the WLS without changing the basic concepts and functionalitydisclosed.

The AP's 14 are responsible for managing all of the resources in theWLS, including all of the SCS's 10 and TLP's 12. Each AP 14 alsocontains a specialized database that contains “triggers” for the WLS. Inorder to conserve resources, the WLS can be programmed to locate onlycertain pre-determined types of transmissions. When a transmission of apre-determined type occurs, then the WLS is triggered to begin locationprocessing. Otherwise, the WLS may be programmed to ignore thetransmission. Each AP 14 also contains applications interfaces thatpermit a variety of applications to securely access the WLS. Theseapplications may, for example, access location records in real time ornon-real time, create or delete certain type of triggers, or cause theWLS to take other actions. Each AP 14 is also capable of certainpost-processing functions that allow the AP 14 to combine a number oflocation records to generate extended reports or analyses useful forapplications such as traffic monitoring or RF optimization.

The NOC 16 is a network management system that provides operators of theWLS easy access to the programming parameters. For example, in somecities, the WLS may contain many hundreds or even thousands of SCS's 10.The NOC is the most effective way to manage a large system, usinggraphical user interface capabilities. The NOC will also receive realtime alerts if certain functions within the WLS are not operatingproperly. These real time alerts can be used by the operator to takecorrective action quickly and prevent a degradation of location service.Experience with trials of the WLS show that the ability of the system tomaintain good location accuracy over time is directly related to theoperator's ability to keep the system operating within its predeterminedparameters.

Readers of U.S. Pat. Nos. 5,327,144 and 5,608,410 and this specificationwill note similarities between the respective systems. Indeed, thesystem disclosed herein is significantly based upon and alsosignificantly enhanced from the system described in those previouspatents. For example, the SCS 10 has been expanded and enhanced from theAntenna Site System described in U.S. Pat. No. 5,608,410. The SCS 10 nowhas the capability to support many more antennas at a single cell site,and further can support the use of extended antennas as described below.This enables the SCS 10 to operate with the sectored cell sites nowcommonly used. The SCS 10 can also transfer data from multiple antennasat a cell site to the TLP 12 instead of always combining data frommultiple antennas before transfer. Additionally, the SCS 10 can supportmultiple air interface protocols thereby allowing the SCS 10 to functioneven as a wireless carrier continually changes the configuration of itssystem.

The TLP 12 is similar to the Central Site System disclosed in U.S. Pat.No. 5,608,410, but has also been expanded and enhanced. For example, theTLP 12 has been made scaleable so that the amount of DSP resourcesrequired by each TLP 12 can be appropriately scaled to match the numberof locations per second required by customers of the WLS. In order tosupport scaling for different WLS capacities, a networking scheme hasbeen added to the TLP 12 so that multiple TLP's 12 can cooperate toshare RF data across wireless communication system network boundaries.Additionally, the TLP 12 has been given control means to determine theSCS's 10, and more importantly the antennas at each of the SCS's 10,from which the TLP 12 is to receive data in order to process a specificlocation. Previously, the Antenna Site Systems automatically forwardeddata to the Central Site System, whether requested or not by the CentralSite System. Furthermore, the SCS 10 and TLP 12 combined have beendesigned with additional means for removing multipath from the receivedtransmissions.

The Database Subsystem of the Central Site System has been expanded anddeveloped into the AP 14. The AP 14 can support a greater variety ofapplications than previously disclosed in U.S. Pat. No. 5,608,410,including the ability to post-process large volumes of location recordsfrom multiple wireless transmitters. This post-processed data can yield,for example, very effective maps for use by wireless carriers to improveand optimize the RF design of the communications systems. This can beachieved, for example, by plotting the locations of all of the callersin an area and the received signal strengths at a number of cell sites.The carrier can then determine whether each cell site is, in fact,serving the exact coverage area desired by the carrier. The AP 14 canalso now store location records anonymously, that is, with the MINand/or other identity information removed from the location record, sothat the location record can be used for RF optimization or trafficmonitoring without causing concerns about an individual user's privacy.

As shown in FIG. 1A, a presently preferred implementation of the WLSincludes a plurality of SCS regions each of which comprises multipleSCS's 10. For example, “SCS Region 1” includes SCS's 10A and 10B (andpreferably others, not shown) that are located at respective cell sitesand share antennas with the base stations at those cell sites. Drop andinsert units 11A and 11B are used to interface fractional T1/E1 lines tofull T1/E1 lines, which in turn are coupled to a digital access andcontrol system (DACS) 13A. The DACS 13A and another DACS 13B are used inthe manner described more fully below for communications between theSCS's 10A, 10B, etc., and multiple TLP's 12A, 12B, etc. As shown, theTLP's are typically collocated and interconnected via an Ethernetnetwork (backbone) and a second, redundant Ethernet network. Alsocoupled to the Ethernet networks are multiple AP's 14A and 14B, multipleNOC's 16A and 16B, and a terminal server 15. Routers 19A and 19B areused to couple one WLS to one or more other Wireless Location System(s).

Signal Collection System 10

Generally, cell sites will have one of the following antennaconfigurations: (i) an omnidirectional site with 1 or 2 receive antennasor (ii) a sectored site with 1, 2, or 3 sectors, and with 1 or 2 receiveantennas used in each sector. As the number of cell sites has increasedin the U.S. and internationally, sectored cell sites have become thepredominant configuration. However, there are also a growing number ofmicro-cells and pico-cells, which can be omnidirectional. Therefore, theSCS 10 has been designed to be configurable for any of these typicalcell sites and has been provided with mechanisms to employ any number ofantennas at a cell site.

The basic architectural elements of the SCS 10 remain the same as forthe Antenna Site System described in U.S. Pat. No. 5,608,410, butseveral enhancements have been made to increase the flexibility of theSCS 10 and to reduce the commercial deployment cost of the system. Themost presently preferred embodiment of the SCS 10 is described herein.The SCS 10, an overview of which is shown in FIG. 2, includes digitalreceiver modules 10-2A through 10-2C; DSP modules 10-3A through 10-3C; aserial bus 10-4, a control and communications module 10-5; a GPS module10-6; and a clock distribution module 10-7. The SCS 10 has the followingexternal connections: power, fractional T1/E1 communications, RFconnections to antennas, and a GPS antenna connection for the timinggeneration (or clock distribution) module 10-7. The architecture andpackaging of the SCS 10 permit it to be physically collocated with cellsites (which is the most common installation place), located at othertypes of towers (such as FM, AM, two-way emergency communications,television, etc.), or located at other building structures (such asrooftops, silos, etc.).

Timing Generation

The Wireless Location System depends upon the accurate determination oftime at all SCS's 10 contained within a network. Several differenttiming generation systems have been described in previous disclosures,however the most presently preferred embodiment is based upon anenhanced GPS receiver 10-6. The enhanced GPS receiver differs from mosttraditional GPS receivers in that the receiver contains algorithms thatremove some of the timing instability of the GPS signals, and guaranteesthat any two SCS's 10 contained within a network can receive timingpulses that are within approximately ten nanoseconds of each other.These enhanced GPS receivers are now commercially available, and furtherreduce some of the time reference related errors that were observed inprevious implementations of wireless location systems. While thisenhanced GPS receiver can produce a very accurate time reference, theoutput of the receiver may still have an unacceptable phase noise.Therefore, the output of the receiver is input to a low phase noise,crystal oscillator-driven phase locked loop circuit that can now produce10 MHz and one pulse per second (PPS) reference signals with less than0.01 degrees RMS of phase noise, and with the pulse output at any SCS 10in a Wireless Location System network within ten nanoseconds of anyother pulse at another SCS 10. This combination of enhanced GPSreceiver, crystal oscillator, and phase locked loop is now the mostpreferred method to produce stable time and frequency reference signalswith low phase noise.

The SCS 10 has been designed to support multiple frequency bands andmultiple carriers with equipment located at the same cell site. This cantake place by using multiple receivers internal to a single SCS chassis,or by using multiple chassis each with separate receivers. In the eventthat multiple SCS chassis are placed at the same cell site, the SCS's 10can share a single timing generation/clock distribution circuit 10-7 andthereby reduce overall system cost. The 10 MHz and one PPS outputsignals from the timing generation circuit are amplified and bufferedinternal to the SCS 10, and then made available via external connectors.Therefore a second SCS can receive its timing from a first SCS using thebuffered output and the external connectors. These signals can also bemade available to base station equipment collocated at the cell site.This might be useful to the base station, for example, in improving thefrequency re-use pattern of a wireless communications system.

Receiver Module 10-2 (Wideband Embodiment)

When a wireless transmitter makes a transmission, the Wireless LocationSystem must receive the transmission at multiple SCS's 10 located atmultiple geographically dispersed cell sites. Therefore, each SCS 10 hasthe ability to receive a transmission on any RF channel on which thetransmission may originate. Additionally, since the SCS 10 is capable ofsupporting multiple air interface protocols, the SCS 10 also supportsmultiple types of RF channels. This is in contrast to most current basestation receivers, which typically receive only one type of channel andare usually capable of receiving only on select RF channels at each cellsite. For example, a typical TDMA base station receiver will onlysupport 30 KHz wide channels, and each receiver is programmed to receivesignals on only a single channel whose frequency does not change often(i.e., there is a relatively fixed frequency plan). Therefore, very fewTDMA base station receivers would receive a transmission on any givenfrequency. As another example, even though some GSM base stationreceivers are capable of frequency hopping, the receivers at multiplebase stations are generally not capable of simultaneously tuning to asingle frequency for the purpose of performing location processing. Infact, the receivers at GSM base stations are programmed to frequency hopto avoid using an RF channel that is being used by another transmitterso as to minimize interference.

The SCS receiver module 10-2 is preferably a dual wideband digitalreceiver that can receive the entire frequency band and all of the RFchannels of an air interface. For cellular systems in the U.S., thisreceiver module is either 15 MHz wide or 25 MHz wide so that all of thechannels of a single carrier or all of the channels of both carriers canbe received. This receiver module has many of the characteristics of thereceiver previously described in U.S. Pat. No. 5,608,410, and FIG. 2A isa block diagram of the currently preferred embodiment. Each receivermodule contains an RF tuner section 10-2-1, a data interface and controlsection 10-2-2 and an analog to digital conversion section 10-2-3. TheRF tuner section 10-2-1 includes two full independent digital receivers(including Tuner #1 and Tuner #2) that convert the analog RF input froman external connector into a digitized data stream. Unlike most basestation receivers, the SCS receiver module does not perform diversitycombining or switching. Rather, the digitized signal from eachindependent receiver is made available to the location processing. Thepresent inventors have determined that there is an advantage to thelocation processing, and especially the multipath mitigation processing,to independently process the signals from each antenna rather thanperform combining on the receiver module.

The receiver module 10-2 performs, or is coupled to elements thatperform, the following functions: automatic gain control (to supportboth nearby strong signals and far away weak signals), bandpassfiltering to remove potentially interfering signals from outside of theRF band of interest, synthesis of frequencies needed for mixing with theRF signals to create an IF signal that can be sampled, mixing, andanalog to digital conversion (ADC) for sampling the RF signals andoutputting a digitized data stream having an appropriate bandwidth andbit resolution. The frequency synthesizer locks the synthesizedfrequencies to the 10 MHz reference signal from the clockdistribution/timing generation module 10-7 (FIG. 2). All of the circuitsused in the receiver module maintain the low phase noise characteristicsof the timing reference signal. The receiver module preferably has aspurious free dynamic range of at least 80 dB.

The receiver module 10-2 also contains circuits to generate testfrequencies and calibration signals, as well as test ports wheremeasurements can be made by technicians during installation ortroubleshooting. Various calibration processes are described in furtherdetail below. The internally generated test frequencies and test portsprovide an easy method for engineers and technicians to rapidly test thereceiver module and diagnose any suspected problems. This is alsoespecially useful during the manufacturing process.

One of the advantages of the Wireless Location System described hereinis that no new antennas are required at cell sites. The WirelessLocation System can use the existing antennas already installed at mostcell sites, including both omni-directional and sectored antennas. Thisfeature can result in significant savings in the installation andmaintenance costs of the Wireless Location System versus otherapproaches that have been described in the prior art. The SCS's digitalreceivers 10-2 can be connected to the existing antennas in two ways, asshown in FIGS. 2B and 2C, respectively. In FIG. 2B, the SCS receivers10-2 are connected to the existing cell site multi-coupler or RFsplitter. In this manner, the SCS 10 uses the cell site's existing lownoise pre-amplifier, band pass filter, and multi-coupler or RF splitter.This type of connection usually limits the SCS 10 to supporting thefrequency band of a single carrier. For example, an A-side cellularcarrier will typically use the band pass filter to block signals fromcustomers of the B-side carrier, and vice versa.

In FIG. 2C, the existing RF path at the cell site has been interrupted,and a new pre-amplifier, band pass filter, and RF splitter has beenadded as part of the Wireless Location System. The new band pass filterwill pass multiple contiguous frequency bands, such as both the A-sideand B-side cellular carriers, thereby allowing the Wireless LocationSystem to locate wireless transmitters using both cellular systems butusing the antennas from a single cell site. In this configuration, theWireless Location System uses matched RF components at each cell site,so that the phase versus frequency responses are identical. This is incontrast to existing RF components, which may be from differentmanufacturers or using different model numbers at various cell sites.Matching the response characteristics of RF components reduces apossible source of error for the location processing, although theWireless Location System has the capability to compensate for thesesources of error. Finally, the new pre-amplifier installed with theWireless Location System will have a very low noise Figure to improvethe sensitivity of the SCS 10 at a cell site. The overall noise Figureof the SCS digital receivers 10-2 is dominated by the noise Figure ofthe low noise amplifiers. Because the Wireless Location System can useweak signals in location processing, whereas the base station typicallycannot process weak signals, the Wireless Location System cansignificantly benefit from a high quality, very low noise amplifier.

In order to improve the ability of the Wireless Location System toaccurately determine TDOA for a wireless transmission, the phase versusfrequency response of the cell site's RF components are determined atthe time of installation and updated at other certain times and thenstored in a table in the Wireless Location System. This can be importantbecause, for example, the band pass filters and/or multi-couplers madeby some manufacturers have a steep and non-linear phase versus frequencyresponse near the edge of the pass band. If the edge of the pass band isvery near to or coincident with the reverse control or voice channels,then the Wireless Location System would make incorrect measurements ofthe transmitted signal's phase characteristics if the Wireless LocationSystem did not correct the measurements using the storedcharacteristics. This becomes even more important if a carrier hasinstalled multi-couplers and/or band pass filters from more than onemanufacturer, because the characteristics at each site may be different.In addition to measuring the phase versus frequency response, otherenvironmental factors may cause changes to the RF path prior to the ADC.These factors require occasional and sometimes periodic calibration inthe SCS 10.

Alternative Narrowband Embodiment of Receiver Module 10-2

In addition or as an alternative to the wideband receiver module, theSCS 10 also supports a narrowband embodiment of the receiver module10-2. In contrast to the wideband receiver module that cansimultaneously receive all of the RF channels in use by a wirelesscommunications system, the narrowband receiver can only receive one or afew RF channels at a time. For example, the SCS 10 supports a 60 KHznarrowband receiver for use in AMPS/TDMA systems, covering twocontiguous 30 KHz channels. This receiver is still a digital receiver asdescribed for the wideband module, however, the frequency synthesizingand mixing circuits are used to dynamically tune the receiver module tovarious RF channels on command. This dynamic tuning can typically occurin one millisecond or less, and the receiver can dwell on a specific RFchannel for as long as required to receive and digitize RF data forlocation processing.

The purpose of the narrowband receiver is to reduce the implementationcost of a Wireless Location System from the cost that is incurred withwideband receivers. Of course, there is some loss of performance, butthe availability of these multiple receivers permits wireless carriersto have more cost/performance options. Additional inventive functionsand enhancements have been added to the Wireless Location System tosupport this new type of narrowband receiver. When the wideband receiveris being used, all RF channels are received continuously at all SCS's10, and subsequent to the transmission, the Wireless Location System canuse the DSP's 10-3 (FIG. 2) to dynamically select any RF channel fromthe digital memory. With the narrowband receiver, the Wireless LocationSystem ensures a priori that the narrowband receivers at multiple cellsites are simultaneously tuned to the same RF channel so that allreceivers can simultaneously receive, digitize and store the samewireless transmission. For this reason, the narrowband receiver isgenerally used only for locating voice channel transmissions, which canbe known a priori to be making a transmission. Since control channeltransmissions can occur asynchronously at any time, the narrowbandreceiver may not be tuned to the correct channel to receive thetransmission.

When the narrowband receivers are used for locating AMPS voice channeltransmissions, the Wireless Location System has the ability totemporarily change the modulation characteristics of the AMPS wirelesstransmitter to aid location processing. This may be necessary becauseAMPS voice channels are only FM modulated with the addition of a lowlevel supervisory tone known as SAT. As is known in the art, theCramer-Rao lower bound of AMPS FM modulation is significantly worse thanthe Manchester encoded FSK modulation used for AMPS reverse channels and“blank and burst” transmissions on the voice channel. Further, AMPSwireless transmitters may be transmitting with significantly reducedenergy if there is no modulating input signal (i.e., no one isspeaking). To improve the location estimate by improving the modulationcharacteristics without depending on the existence or amplitude of aninput modulating signal, the Wireless Location System can cause an AMPSwireless transmitter to transmit a “blank and burst” message at a pointin time when the narrowband receivers at multiple SCS's 10 are tuned tothe RF channel on which the message will be sent. This is furtherdescribed later.

The Wireless Location System performs the following steps when using thenarrowband receiver module (see the flowchart of FIG. 2C-1):

a first wireless transmitter is a priori engaged in transmitting on aparticular RF channel;

the Wireless Location System triggers to make a location estimate of thefirst wireless transmitter (the trigger may occur either internally orexternally via a command/response interface);

the Wireless Location System determines the cell site, sector, RFchannel, timeslot, long code mask, and encryption key (all informationelements may not be necessary for all air interface protocols) currentlyin use by the first wireless transmitter;

the Wireless Location System tunes an appropriate first narrowbandreceiver at an appropriate first SCS 10 to the RF channel and timeslotat the designated cell site and sector, where appropriate typicallymeans both available and collocated or in closest proximity;

the first SCS 10 receives a time segment of RF data, typically rangingfrom a few microseconds to tens of milliseconds, from the firstnarrowband receiver and evaluates the transmission's power, SNR, andmodulation characteristics;

if the transmission's power or SNR is below a predetermined threshold,the Wireless Location System waits a predetermined length of time andthen returns to the above third step (where the Wireless Location Systemdetermines the cell site, sector, etc.);

if the transmission is an AMPS voice channel transmission and themodulation is below a threshold, then the Wireless Location Systemcommands the wireless communications system to send a command to thefirst wireless transmitter to cause a “blank and burst” on the firstwireless transmitter;

the Wireless Location System requests the wireless communications systemto prevent hand-off of the wireless transmitter to another RF channelfor a predetermined length of time;

the Wireless Location System receives a response from the wirelesscommunications system indicating the time period during which the firstwireless transmitter will be prevented from handing-off, and ifcommanded, the time period during which the wireless communicationssystem will send a command to the first wireless transmitter to cause a“blank and burst”;

the Wireless Location System determines the list of antennas that willbe used in location processing (the antenna selection process isdescribed below);

the Wireless Location System determines the earliest Wireless LocationSystem timestamp at which the narrowband receivers connected to theselected antennas are available to begin simultaneously collecting RFdata from the RF channel currently in use by the first wirelesstransmitter;

based upon the earliest Wireless Location System timestamp and the timeperiods in the response from the wireless communications system, theWireless Location System commands the narrowband receivers connected tothe antennas that will be used in location processing to tune to thecell site, sector, and RF channel currently in use by the first wirelesstransmitter and to receive RF data for a predetermined dwell time (basedupon the bandwidth of the signal, SNR, and integration requirements);

the RF data received by the narrowband receivers are written into thedual port memory;

location processing on the received RF data commences, as described inU.S. Pat. Nos. 5,327,144 and 5,608,410 and in sections below;

the Wireless Location System again determines the cell site, sector, RFchannel, timeslot, long code mask, and encryption key currently in useby the first wireless transmitter;

if the cell site, sector, RF channel, timeslot, long code mask, andencryption key currently in use by the first wireless transmitter haschanged between queries (i.e. before and after gathering the RF data)the Wireless Location System ceases location processing, causes an alertmessage that location processing failed because the wireless transmitterchanged transmission status during the period of time in which RF datawas being received, and re-triggers this entire process;

location processing on the received RF data completes in accordance withthe steps described below.

The determination of the information elements including cell site,sector, RF channel, timeslot, long code mask, and encryption key (allinformation elements may not be necessary for all air interfaceprotocols) is typically obtained by the Wireless Location System througha command/response interface between the Wireless Location System andthe wireless communications system.

The use of the narrowband receiver in the manner described above isknown as random tuning because the receivers can be directed to any RFchannel on command from the system. One advantage to random tuning isthat locations are processed only for those wireless transmitters forwhich the Wireless Location System is triggered. One disadvantage torandom tuning is that various synchronization factors, including theinterface between the wireless communications system and the WirelessLocation System and the latency times in scheduling the necessaryreceivers throughout the system, can limit the total location processingthroughput. For example, in a TDMA system, random tuning used throughoutthe Wireless Location System will typically limit location processingthroughput to about 2.5 locations per second per cell site sector.Moreover, location processing throughput is a function of integrationtime and could be much lower than 2.5 locations per second per cell sitesector.

Therefore, the narrowband receiver also supports another mode, automaticsynchronous or sequential tuning, which can perform location processingat a higher throughput. FIGS. 2C-2, 2C-3 and 2C-4 may be referenced inconnection with the explanation below of exemplary implementations ofautomatic synchronous or sequential tuning in accordance with thepresent invention. For example, in a TDMA system, using similarassumptions about dwell time and setup time as for the narrowbandreceiver operation described above, sequential tuning can achieve alocation processing throughput of about 41 locations per second per cellsite sector, meaning that all 395 TDMA RF channels can be processed inabout 9 seconds. This increased rate can be achieved by taking advantageof, for example, the two contiguous RF channels that can be receivedsimultaneously, location processing all three TDMA timeslots in an RFchannel, and eliminating the need for synchronization with the wirelesscommunications system. When the Wireless Location System is using thenarrowband receivers for sequential tuning, the Wireless Location Systemhas no knowledge of the identity of the wireless transmitter because theWireless Location System does not wait for a trigger, nor does theWireless Location System query the wireless communications system forthe identity information prior to receiving the transmission. In thismethod, the Wireless Location System sequences through every cell site,RF channel and time slot, performs location processing, and reports alocation record identifying a time stamp, cell site, RF channel, timeslot, and location. Subsequent to the location record report, theWireless Location System and the wireless communications system matchthe location records to the wireless communications system's dataindicating which wireless transmitters were in use at the time, andwhich cell sites, RF channels, and time slots were used by each wirelesstransmitter. Then, the Wireless Location System can retain the locationrecords for wireless transmitters of interest, and discard thoselocation records for the remaining wireless transmitters. The automaticsynchronous/sequential tuning technique has no capacity limits. Capacityis limited by other factors such as SCS-TLP backhaul, or DSP processingresources.

In another example, the WLS works from a tasking list of wirelesstransmitters to be located. In this example, the WLS is also providedwith a list of serving cell sites and channels. The narrowband receiversthen step through the complete set of channels in unison, and anywireless transmitter using one of those channels can be located.

It should also be noted that the automatic synchronous tuning methoddescribed herein may be used in location systems that are not strictlyTDOA-based, such as those using angle-of-arrival (AOA) information,including but not limited to hybrid TDOA-AOA location systems andAOA-only systems. For reference, U.S. Pat. No. 4,728,959, Mar. 1, 1988,discloses an AOA-based location system, and U.S. Pat. No. 6,119,013,Sep. 12, 2000, discloses a hybrid TDOA-AOA location system.

In sum, an automatic synchronous tuning method allows for the WLS totune its 1 to n channel narrowband receivers within a geographical areato the same RF channel or block of n channels. At each retuning episode,a global tasking list may be checked to see if signal collection isrequired. If the channel is tasked, every narrowband SCS collects signaldata for subsequent location processing. Once signal collection isperformed, every narrowband SCS is then retuned in unison to the next RFfrequency or block of n frequencies in accordance with the predeterminedtuning plan.

An alternative embodiment utilizes a circular ring buffer, in each SCS,capable of holding 1 to k digitized collected samples for each channel.In this case, as the narrowband SCSs step through the retuning patternin synchronous fashion, each SCS collects the signal without regard to atasking list and stores the digitized RF information in a circular ringbuffer or series of ring buffers so that each RF channel has 1 to khistorical digitized samples recorded. In this embodiment, an incominglocation request may trigger location processing using just the recordedsample(s) for the identified channel or may activate location processingusing 1 to k recorded samples and a fresh sample collected as thesynchronous tuning cycle generates a new sample. This is graphicallyrepresented by FIG. 2C-3.

Another alternative embodiment and as illustrated in FIG. 2C-4, anautomatic synchronous (or sequential) tuning method in accordance withthe present invention comprises the steps of sequencing through everycell site, RF channel, performing location processing, and reporting alocation record identifying a time stamp, cell site, RF channel, timeslot (e.g., in a TDMA system), and location for signals of interest(i.e., signals from transmitters of interest). In an alternativeimplementation wherein a location record is generated for all receivedsignals, and not only for signals of interest, subsequent to thelocation record report, the location records are matched to the wirelesscommunications system's data indicating which wireless transmitters werein use at the time, and which cell sites, RF channels, and time slotswere used by each wireless transmitter. In this alternative example, theWLS can then retain the location records for wireless transmitters ofinterest and discard those location records for the remaining wirelesstransmitters. In all embodiments, 1 to q “free” periods may be scheduledwithin the synchronous tuning pattern where the receivers may be retunedon an ad hoc basis. This would allow for decreased latency for highpriority locations as the receivers could then be temporarily revertedto on-demand tuning.

Digital Signal Processor Module 10-3

The SCS digital receiver modules 10-2 output a digitized RF data streamhaving a specified bandwidth and bit resolution. For example, a 15 MHzembodiment of the wideband receiver may output a data stream containing60 million samples per second, at a resolution of 14 bits per sample.This RF data stream will contain all of the RF channels that are used bythe wireless communications system. The DSP modules 10-3 receive thedigitized data stream, and can extract any individual RF channel throughdigital mixing and filtering. The DSP's can also reduce the bitresolution upon command from the Wireless Location System, as needed toreduce the bandwidth requirements between the SCS 10 and TLP 12. TheWireless Location System can dynamically select the bit resolution atwhich to forward digitized baseband RF data, based upon the processingrequirements for each location. DSP's are used for these functions toreduce the systemic errors that can occur from mixing and filtering withanalog components. The use of DSP's allows perfect matching in theprocessing between any two SCS's 10.

A block diagram of the DSP module 10-3 is shown is FIG. 2D, and theoperation of the DSP module is depicted by the flowchart of FIG. 2E. Asshown in FIG. 2D, the DSP module 10-3 comprises the following elements:a pair of DSP elements 10-3-1A and 10-3-1B, referred to collectively asa “first” DSP; serial to parallel converters 10-3-2; dual port memoryelements 10-3-3; a second DSP 10-3-4; a parallel to serial converter; aFIFO buffer; a DSP 10-3-5 (including RAM) for detection, another DSP10-3-6 for demodulation, and another DSP 10-3-7 for normalization andcontrol; and an address generator 10-3-8. In a presently preferredembodiment, the DSP module 10-3 receives the wideband digitized datastream (FIG. 2E, step S1), and uses the first DSP (10-3-1A and 10-3-1B)to extract blocks of channels (step S2). For example, a first DSPprogrammed to operate as a digital drop receiver can extract four blocksof channels, where each block includes at least 1.25 MHz of bandwidth.This bandwidth can include 42 channels of AMPS or TDMA, 6 channels ofGSM, or 1 channel of CDMA. The DSP does not require the blocks to becontiguous, as the DSP can independently digitally tune to any set of RFchannels within the bandwidth of the wideband digitized data stream. TheDSP can also perform wideband or narrow band energy detection on all orany of the channels in the block, and report the power levels by channelto the TLP 12 (step S3). For example, every 10 ms, the DSP can performwideband energy detection and create an RF spectral map for all channelsfor all receivers (see step S9). Because this spectral map can be sentfrom the SCS 10 to the TLP 12 every 10 ms via the communications linkconnecting the SCS 10 and the TLP 12, a significant data overhead couldexist. Therefore, the DSP reduces the data overhead by companding thedata into a finite number of levels. Normally, for example, 84 dB ofdynamic range could require 14 bits. In the companding processimplemented by the DSP, the data is reduced, for example, to only 4 bitsby selecting 16 important RF spectral levels to send to the TLP 12. Thechoice of the number of levels, and therefore the number of bits, aswell as the representation of the levels, can be automatically adjustedby the Wireless Location System. These adjustments are performed tomaximize the information value of the RF spectral messages sent to theTLP 12 as well as to optimize the use of the bandwidth available on thecommunications link between the SCS 10 and the TLP 12.

After conversion, each block of RF channels (each at least 1.25 MHz) ispassed through serial to parallel converter 10-3-2 and then stored indual port digital memory 10-3-3 (step S4). The digital memory is acircular memory, which means that the DSP module begins writing datainto the first memory address and then continues sequentially until thelast memory address is reached. When the last memory address is reached,the DSP returns to the first memory address and continues tosequentially write data into memory. Each DSP module typically containsenough memory to store several seconds of data for each block of RFchannels to support the latency and queuing times in the locationprocess.

In the DSP module, the memory address at which digitized and convertedRF data is written into memory is the time stamp used throughout theWireless Location System and which the location processing references indetermining TDOA. In order to ensure that the time stamps are aligned atevery SCS 10 in the Wireless Location System, the address generator10-3-8 receives the one pulse per second signal from the timinggeneration/clock distribution module 10-7 (FIG. 2). Periodically, theaddress generator at all SCS's 10 in a Wireless Location System willsimultaneously reset themselves to a known address. This enables thelocation processing to reduce or eliminate accumulated timing errors inthe recording of time stamps for each digitized data element.

The address generator 10-3-8 controls both writing to and reading fromthe dual port digital memory 10-3-3. Writing takes places continuouslysince the ADC is continuously sampling and digitizing RF signals and thefirst DSP (10-3-1A and 10-3-1B) is continuously performing the digitaldrop receiver function. However, reading occurs in bursts as theWireless Location System requests data for performing demodulation andlocation processing. The Wireless Location System may even performlocation processing recursively on a single transmission, and thereforerequires access to the same data multiple times. In order to service themany requirements of the Wireless Location System, the address generatorallows the dual port digital memory to be read at a rate faster than thewriting occurs. Typically, reading can be performed eight times fasterthan writing.

The DSP module 10-3 uses the second DSP 10-3-4 to read the data from thedigital memory 10-3-3, and then performs a second digital drop receiverfunction to extract baseband data from the blocks of RF channels (stepS5). For example, the second DSP can extract any single 30 KHz AMPS orTDMA channel from any block of RF channels that have been digitized andstored in the memory. Likewise, the second DSP can extract any singleGSM channel. The second DSP is not required to extract a CDMA channel,since the channel bandwidth occupies the full bandwidth of the stored RFdata. The combination of the first DSP 10-3-1A, 10-3-1B and the secondDSP 10-3-4 allows the DSP module to select, store, and recover anysingle RF channel in a wireless communications system. A DSP moduletypically will store four blocks of channels. In a dual-mode AMPS/TDMAsystem, a single DSP module can continuously and simultaneously monitorup to 42 analog reverse control channels, up to 84 digital controlchannels, and also be tasked to monitor and locate any voice channeltransmission. A single SCS chassis will typically support up to threereceiver modules 10-2 (FIG. 2), to cover three sectors of two antennaseach, and up to nine DSP modules (three DSP modules per receiver permitsan entire 15 MHz bandwidth to be simultaneously stored into digitalmemory). Thus, the SCS 10 is a very modular system than can be easilyscaled to match any type of cell site configuration and processing load.

The DSP module 10-3 also performs other functions, including automaticdetection of active channels used in each sector (step S6), demodulation(step S7), and station based location processing (step S8). The WirelessLocation System maintains an active map of the usage of the RF channelsin a wireless communications system (step S9), which enables theWireless Location System to manage receiver and processing resources,and to rapidly initiate processing when a particular transmission ofinterest has occurred. The active map comprises a table maintainedwithin the Wireless Location System that lists for each antennaconnected to an SCS 10 the primary channels assigned to that SCS 10 andthe protocols used in those channels. A primary channel is an RF controlchannel assigned to a collocated or nearby base station which the basestation uses for communications with wireless transmitters. For example,in a typical cellular system with sectored cell sites, there will be oneRF control channel frequency assigned for use in each sector. Thosecontrol channel frequencies would typically be assigned as primarychannels for a collocated SCS 10.

The same SCS 10 may also be assigned to monitor the RF control channelsof other nearby base stations as primary channels, even if other SCS's10 also have the same primary channels assigned. In this manner, theWireless Location System implements a system demodulation redundancythat ensures that any given wireless transmission has an infinitesimalprobability of being missed. When this demodulation redundancy featureis used, the Wireless Location System will receive, detect, anddemodulate the same wireless transmission two or more times at more thanone SCS 10. The Wireless Location System includes means to detect whenthis multiple demodulation has occurred and to trigger locationprocessing only once. This function conserves the processing andcommunications resources of the Wireless Location System, and is furtherdescribed below. This ability for a single SCS 10 to detect anddemodulate wireless transmissions occurring at cell sites not collocatedwith the SCS 10 permits operators of the Wireless Location System todeploy more efficient Wireless Location System networks. For example,the Wireless Location System may be designed such that the WirelessLocation System uses much fewer SCS's 10 than the wirelesscommunications system has base stations.

In the Wireless Location System, primary channels are entered andmaintained in the table using two methods: direct programming andautomatic detection. Direct programming comprises entering primarychannel data into the table using one of the Wireless Location Systemuser interfaces, such as the Network Operations Console 16 (FIG. 1), orby receiving channel assignment data from the Wireless Location Systemto wireless communications system interface. Alternatively, the DSPmodule 10-3 also runs a background process known as automatic detectionin which the DSP uses spare or scheduled processing capacity to detecttransmissions on various possible RF channels and then attempt todemodulate those transmissions using probable protocols. The DSP modulecan then confirm that the primary channels directly programmed arecorrect, and can also quickly detect changes made to channels at basestation and send an alert to the operator of the Wireless LocationSystem.

The DSP module performs the following steps in automatic detection (seeFIG. 2E1):

for each possible control and/or voice channel which may be used in thecoverage area of the SCS 10, peg counters are established (step S7-1);

at the start of a detection period, all peg counters are reset to zero(step S7-2);

each time that a transmission occurs in a specified RF channel, and thereceived power level is above a particular pre-set threshold, the pegcounter for that channel is incremented (step S7-3);

each time that a transmission occurs in a specified RF channel, and thereceived power level is above a second particular pre-set threshold, theDSP module attempts to demodulate a certain portion of the transmissionusing a first preferred protocol (step S7-4);

if the demodulation is successful, a second peg counter for that channelis incremented (step S7-5);

if the demodulation is unsuccessful, the DSP module attempts todemodulate a portion of the transmission using a second preferredprotocol (step S7-6);

if the demodulation is successful, a third peg counter for that channelis incremented (step S7-7);

at the end of a detection period, the Wireless Location System reads allpeg counters (step S7-8); and

the Wireless Location System automatically assigns primary channelsbased upon the peg counters (step S7-9).

The operator of the Wireless Location System can review the peg countersand the automatic assignment of primary channels and demodulationprotocols, and override any settings that were performed automatically.In addition, if more than two preferred protocols may be used by thewireless carrier, then the DSP module 10-3 can be downloaded withsoftware to detect the additional protocols. The architecture of the SCS10, based upon wideband receivers 10-2, DSP modules 10-3, anddownloadable software permits the Wireless Location System to supportmultiple demodulation protocols in a single system. There is asignificant cost advantage to supporting multiple protocols within thesingle system, as only a single SCS 10 is required at a cell site. Thisis in contrast to many base station architectures, which may requiredifferent transceiver modules for different modulation protocols. Forexample, while the SCS 10 could support AMPS, TDMA, and CDMAsimultaneously in the same SCS 10, there is no base station currentlyavailable that can support this functionality.

The ability to detect and demodulate multiple protocols also includesthe ability to independently detect the use of authentication inmessages transmitted over the certain air interface protocols. The useof authentication fields in wireless transmitters started to becomeprevalent within the last few years as a means to reduce the occurrenceof fraud in wireless communications systems. However, not all wirelesstransmitters have implemented authentication. When authentication isused, the protocol generally inserts an additional field into thetransmitted message. Frequently this field is inserted between theidentity of the wireless transmitter and the dialed digits in thetransmitted message. When demodulating a wireless transmission, theWireless Location System determines the number of fields in thetransmitted message, as well as the message type (i.e. registration,origination, page response, etc.). The Wireless Location Systemdemodulates all fields and if extra fields appear to be present, givingconsideration to the type of message transmitted, then the WirelessLocation System tests all fields for a trigger condition. For example,if the dialed digits “911” appear in the proper place in a field, andthe field is located either in its proper place without authenticationor its proper place with authentication, then the Wireless LocationSystem triggers normally. In this example, the digits “911” would berequired to appear in sequence as “911” or “*911”, with no other digitsbefore or after either sequence. This functionality reduces oreliminates a false trigger caused by the digits “911”appearing as partof an authentication field.

The support for multiple demodulation protocols is important for theWireless Location System to successfully operate because locationprocessing must be quickly triggered when a wireless caller has dialed“911”. The Wireless Location System can trigger location processingusing two methods: the Wireless Location System will independentlydemodulate control channel transmissions, and trigger locationprocessing using any number of criteria such as dialed digits, or theWireless Location System may receive triggers from an external sourcesuch as the carrier's wireless communications system. The presentinventors have found that independent demodulation by the SCS 10 resultsin the fastest time to trigger, as measured from the moment that awireless user presses the “SEND” or “TALK” (or similar) button on awireless transmitter.

Control and Communications Module 10-5

The control and communications module 10-5, depicted in FIG. 2F,includes data buffers 10-5-1, a controller 10-5-2, memory 10-5-3, a CPU10-5-4 and a T1/E1 communications chip 10-5-5. The module has many ofthe characteristics previously described in U.S. Pat. No. 5,608,410.Several enhancements have been added in the present embodiment. Forexample, the SCS 10 now includes an automatic remote reset capability,even if the CPU on the control and communications module ceases toexecute its programmed software. This capability can reduce theoperating costs of the Wireless Location System because technicians arenot required to travel to a cell site to reset an SCS 10 if it fails tooperate normally. The automatic remote reset circuit operates bymonitoring the communications interface between the SCS 10 and the TLP12 for a particular sequence of bits. This sequence of bits is asequence that does not occur during normal communications between theSCS 10 and the TLP 12. This sequence, for example, may consist of an allones pattern. The reset circuit operates independently of the CPU sothat even if the CPU has placed itself in a locked or othernon-operating status, the circuit can still achieve the reset of the SCS10 and return the CPU to an operating status.

This module now also has the ability to record and report a wide varietyof statistics and variables used in monitoring or diagnosing theperformance of the SCS 10. For example, the SCS 10 can monitor thepercent capacity usage of any DSP or other processor in the SCS 10, aswell as the communications interface between the SCS 10 and the TLP 12.These values are reported regularly to the AP 14 and the NOC 16, and areused to determine when additional processing and communicationsresources are required in the system. For example, alarm thresholds maybe set in the NOC to indicate to an operator if any resource isconsistently exceeding a preset threshold. The SCS 10 can also monitorthe number of times that transmissions have been successfullydemodulated, as well as the number of failures. This is useful inallowing operators to determine whether the signal thresholds fordemodulation have been set optimally.

This module, as well as the other modules, can also self-report itsidentity to the TLP 12. As described below, many SCS's 10 can beconnected to a single TLP 12. Typically, the communications betweenSCS's 10 and TLP's 12 is shared with the communications between basestations and MSC's. It is frequently difficult to quickly determineexactly which SCS's 10 have been assigned to particular circuits.Therefore, the SCS 10 contains a hard coded identity, which is recordedat the time of installation. This identity can be read and verified bythe TLP 12 to positively determine which SCS 10 has been assigned by acarrier to each of several different communications circuits.

The SCS to TLP communications supports a variety of messages, including:commands and responses, software download, status and heartbeat,parameter download, diagnostic, spectral data, phase data, primarychannel demodulation, and RF data. The communications protocol isdesigned to optimize Wireless Location System operation by minimizingthe protocol overhead and the protocol includes a message priorityscheme. Each message type is assigned a priority, and the SCS 10 and theTLP 12 will queue messages by priority such that a higher prioritymessage is sent before a lower priority message is sent. For example,demodulation messages are generally set at a high priority because theWireless Location System must trigger location processing on certaintypes of calls (i.e., E9-1-1) without delay. Although higher prioritymessages are queued before lower priority messages, the protocolgenerally does not preempt a message that is already in transit. Thatis, a message in the process of being sent across the SCS 10 to TLP 12communications interface will be completed fully, but then the nextmessage to be sent will be the highest priority message with theearliest time stamp. In order to minimize the latency of high prioritymessages, long messages, such as RF data, are sent in segments. Forexample, the RF data for a full 100-millisecond AMPS transmission may beseparated into 10-millisecond segments. In this manner, a high prioritymessage may be queued in between segments of the RF data.

Calibration and Performance Monitoring

The architecture of the SCS 10 is heavily based upon digitaltechnologies including the digital receiver and the digital signalprocessors. Once RF signals have been digitized, timing, frequency, andphase differences can be carefully controlled in the various processes.More importantly, any timing, frequency, and phase differences can beperfectly matched between the various receivers and various SCS's 10used in the Wireless Location System. However, prior to the ADC, the RFsignals pass through a number of RF components, including antennas,cables, low noise amplifiers, filters, duplexors, multi-couplers, and RFsplitters. Each of these RF components has characteristics important tothe Wireless Location System, including delay and phase versus frequencyresponse. When the RF and analog components are perfectly matchedbetween the pairs of SCS's 10, such as SCS 10A and SCS 10B in FIG. 2G,then the effects of these characteristics are automatically eliminatedin the location processing. But when the characteristics of thecomponents are not matched, then the location processing caninadvertently include instrumental errors resulting from the mismatch.Additionally, many of these RF components can experience instabilitywith power, time, temperature, or other factors that can addinstrumental errors to the determination of location. Therefore, severalinventive techniques have been developed to calibrate the RF componentsin the Wireless Location System and to monitor the performance of theWireless Location System on a regular basis. Subsequent to calibration,the Wireless Location System stores the values of these delays andphases versus frequency response (i.e. by RF channel number) in a tablein the Wireless Location System for use in correcting these instrumentalerrors. FIGS. 2G-2J are referred to below in explaining thesecalibration methods.

External Calibration Method

Referring to FIG. 2G, the timing stability of the Wireless LocationSystem is measured along baselines, where each baseline is comprised oftwo SCS's, 10A and 10B, and an imaginary line (A−B) drawn between them.In a TDOA/FDOA type of Wireless Location System, locations of wirelesstransmitters are calculated by measuring the differences in the timesthat each SCS 10 records for the arrival of the signal from a wirelesstransmitter. Thus, it is important that the differences in timesmeasured by SCS's 10 along any baseline are largely attributed to thetransmission time of the signal from the wireless transmitter andminimally attributed to the variations in the RF and analog componentsof the SCS's 10 themselves. To meet the accuracy goals of the WirelessLocation System, the timing stability for any pair of SCS's 10 aremaintained at much less than 100 nanoseconds RMS (root mean square).Thus, the components of the Wireless Location System will contributeless than 100 feet RMS of instrumentation error in the estimation of thelocation of a wireless transmitter. Some of this error is allocated tothe ambiguity of the signal used to calibrate the system. This ambiguitycan be determined from the well-known Cramer-Rao lower bound equation.In the case of an AMPS reverse control channel, this error isapproximately 40 nanoseconds RMS. The remainder of the error budget isallocated to the components of the Wireless Location System, primarilythe RF and analog components in the SCS 10.

In the external calibration method, the Wireless Location System uses anetwork of calibration transmitters whose signal characteristics matchthose of the target wireless transmitters. These calibrationtransmitters may be ordinary wireless telephones emitting periodicregistration signals and/or page response signals. Each usableSCS-to-SCS baseline is preferably calibrated periodically using acalibration transmitter that has a relatively clear and unobstructedpath to both SCS's 10 associated with the baseline. The calibrationsignal is processed identically to a signal from a target wirelesstransmitter. Since the TDOA values are known a priori, any errors in thecalculations are due to systemic errors in the Wireless Location System.These systemic errors can then be removed in the subsequent locationcalculations for target transmitters.

FIG. 2G illustrates the external calibration method for minimizingtiming errors. As shown, a first SCS 10A at a point “A” and a second SCS10A at a point “B” have an associated baseline A−B. A calibration signalemitted at time T₀ by a calibration transmitter at point “C” willtheoretically reach first SCS 10A at time T₀+T_(AC). T_(AC) is a measureof the amount of time required for the calibration signal to travel fromthe antenna on the calibration transmitter to the dual port digitalmemory in a digital receiver. Likewise, the same calibration signal willreach second SCS 10B at a theoretical time T₀+T_(BC). Usually, however,the calibration signal will not reach the digital memory and the digitalsignal processing components of the respective SCS's 10 at exactly thecorrect times. Rather, there will be errors e1 and e2 in the amount oftime (T_(AC), T_(BC)) it takes the calibration signal to propagate fromthe calibration transmitter to the SCS's 10, respectively, such that theexact times of arrival are actually T₀+T_(AC)+e1 and T₀+T_(BC)+e2. Sucherrors will be due to some extent to delays in the signal propagationthrough the air, i.e., from the calibration transmitter's antenna to theSCS antennas; however, the errors will be due primarily to time varyingcharacteristics in the SCS front end components. The errors e1 and e2cannot be determined per se because the system does not know the exacttime (T₀) at which the calibration signal was transmitted. The systemcan, however, determine the error in the difference in the time ofarrival of the calibration signal at the respective SCS's 10 of anygiven pair of SCS's 10. This TDOA error value is defined as thedifference between the measured TDOA value and the theoretical TDOAvalue τ₀, where τ₀ is the theoretical differences between thetheoretical delay values T_(AC) and T_(BC). Theoretical TDOA values foreach pair of SCS's 10 and each calibration transmitter are known becausethe positions of the SCS's 10 and calibration transmitter, and the speedat which the calibration signal propagates, are known. The measured TDOAbaseline (TDOA_(A−B)) can be represented as TDOA_(A−B)=τ₀+ε, whereε=e1−e2. In a similar manner, a calibration signal from a secondcalibration transmitter at point “D” will have associated errors e3 ande4. The ultimate value of ε to be subtracted from TDOA measurements fora target transmitter will be a function (e.g., weighted average) of theε values derived for one or more calibration transmitters. Therefore, agiven TDOA measurement (TDOA_(measured)) for a pair of SCS's 10 atpoints “X” and “Y” and a target wireless transmitter at an unknownlocation will be corrected as follows:

 TDOA _(X−Y) =TDOA _(measured)−ε

ε=k 1ε1 +k 2ε2 + . . . kNεN,

where k1, k2, etc., are weighting factors and ε1, ε2, etc., are theerrors determined by subtracting the measured TDOA values from thetheoretical values for each calibration transmitter. In this example,error value ε1 may the error value associated with the calibrationtransmitter at point “C” in the drawing. The weighting factors aredetermined by the operator of the Wireless Location System, and inputinto the configuration tables for each baseline. The operator will takeinto consideration the distance from each calibration transmitter to theSCS's 10 at points “X” and “Y”, the empirically determined line of sightfrom each calibration transmitter to the SCS's 10 at points “X” and “Y”,and the contribution that each SCS “X” and “Y” would have made to alocation estimate of a wireless transmitter that might be located in thevicinity of each calibration transmitter. In general, calibrationtransmitters that are nearer to the SCS's 10 at points “X” and “Y” willbe weighted higher than calibration transmitters that are farther away,and calibration transmitters with better line of sight to the SCS's 10at points “X” and “Y” will be weighted higher than calibrationtransmitters with worse line of sight.

Each error component e1, e2, etc., and therefore the resulting errorcomponent ε, can vary widely, and wildly, over time because some of theerror component is due to multipath reflection from the calibrationtransmitter to each SCS 10. The multipath reflection is very much pathdependent and therefore will vary from measurement to measurement andfrom path to path. It is not an object of this method to determine themultipath reflection for these calibration paths, but rather todetermine the portion of the errors that are attributable to thecomponents of the SCS's 10. Typically, therefore, error values e1 and e3will have a common component since they relate to the same first SCS10A. Likewise, error values e2 and e4 will also have a common componentsince they relate to the second SCS 10B. It is known that while themultipath components can vary wildly, the component errors vary slowlyand typically vary sinusoidally. Therefore, in the external calibrationmethod, the error values E are filtered using a weighted, timebasedfilter that decreases the weight of the wildly varying multipathcomponents while preserving the relatively slow changing errorcomponents attributed to the SCS's 10. One such exemplary filter used inthe external calibration method is the Kalman filter.

The period between calibration transmissions is varied depending on theerror drift rates determined for the SCS components. The period of thedrift rate should be much longer than the period of the calibrationinterval. The Wireless Location System monitors the period of the driftrate to determine continuously the rate of change, and may periodicallyadjust the calibration interval, if needed. Typically, the calibrationrate for a Wireless Location System such as one in accordance with thepresent invention is between 10 and 30 minutes. This corresponds wellwith the typical time period for the registration rate in a wirelesscommunications system. If the Wireless Location System were to determinethat the calibration interval must be adjusted to a rate faster than theregistration rate of the wireless communications system, then the AP 14(FIG. 1) would automatically force the calibration transmitter totransmit by paging the transmitter at the prescribed interval. Eachcalibration transmitter is individually addressable and therefore thecalibration interval associated with each calibration transmitter can bedifferent.

Since the calibration transmitters used in the external calibrationmethod are standard telephones, the Wireless Location System must have amechanism to distinguish those telephones from the other wirelesstransmitters that are being located for various application purposes.The Wireless Location System maintains a list of the identities of thecalibration transmitters, typically in the TLP 12 and in the AP 14. In acellular system, the identity of the calibration transmitter can be theMobile Identity Number, or MIN. When the calibration transmitter makes atransmission, the transmission is received by each SCS 10 anddemodulated by the appropriate SCS 10. The Wireless Location Systemcompares the identity of the transmission with a pre-stored tasking listof identities of all calibration transmitters. If the Wireless LocationSystem determines that the transmission was a calibration transmission,then the Wireless Location System initiates external calibrationprocessing.

Internal Calibration Method

In addition to the external calibration method, it is an object of thepresent invention to calibrate all channels of the wideband digitalreceiver used in the SCS 10 of a Wireless Location System. The externalcalibration method will typically calibrate only a single channel of themultiple channels used by the wideband digital receiver. This is becausethe fixed calibration transmitters will typically scan to thehighest-power control channel, which will typically be the same controlchannel each time. The transfer function of a wideband digital receiver,along with the other associated components, does not remain perfectlyconstant, however, and will vary with time and temperature. Therefore,even though the external calibration method can successfully calibrate asingle channel, there is no assurance that the remaining channels willalso be calibrated.

The internal calibration method, represented in the flowchart of FIG.2H, is particularly suited for calibrating an individual first receiversystem (i.e., SCS 10) that is characterized by a time- andfrequency-varying transfer function, wherein the transfer functiondefines how the amplitude and phase of a received signal will be alteredby the receiver system and the receiver system is utilized in a locationsystem to determine the location of a wireless transmitter by, in part,determining a difference in time of arrival of a signal transmitted bythe wireless transmitter and received by the receiver system to becalibrated and another receiver system, and wherein the accuracy of thelocation estimate is dependent, in part, upon the accuracy of TDOAmeasurements made by the system. An example of a AMPS RCC transferfunction is depicted in FIG. 2I, which depicts how the phase of thetransfer function varies across the 21 control channels spanning 630KHz.

Referring to FIG. 2H, the internal calibration method includes the stepsof temporarily and electronically disconnecting the antenna used by areceiver system from the receiver system (step S-20); injecting aninternally generated wideband signal with known and stable signalcharacteristics into the first receiver system (step S-21); utilizingthe generated wideband signal to obtain an estimate of the manner inwhich the transfer function varies across the bandwidth of the firstreceiver system (step S-22); and utilizing the estimate to mitigate theeffects of the variation of the first transfer function on the time andfrequency measurements made by the first receiver system (step S-23).One example of a stable wideband signal used for internal calibration isa comb signal, which is comprised of multiple individual,equal-amplitude frequency elements at a known spacing, such as 5 KHz. Anexample of such a signal is shown in FIG. 2I.

The antenna must be temporarily disconnected during the internalcalibration process to prevent external signals from entering thewideband receiver and to guarantee that the receiver is only receivingthe stable wideband signal. The antenna is electronically disconnectedonly for a few milliseconds to minimize the chance of missing too muchof a signal from a wireless transmitter. In addition, internalcalibration is typically performed immediately after externalcalibration to minimize the possibility that the any component in theSCS 10 drifts during the interval between external and internalcalibration. The antenna is disconnected from the wideband receiverusing two electronically controlled RF relays (not shown). An RF relaycannot provide perfect isolation between input and output even when inthe “off” position, but it can provide up to 70 dB of isolation. Tworelays may be used in series to increase the amount of isolation and tofurther assure that no signal is leaked from the antenna to the widebandreceiver during calibration. Similarly, when the internal calibrationfunction is not being used, the internal calibration signal is turnedoff, and the two RF relays are also turned off to prevent leakage of theinternal calibration signals into the wideband receiver when thereceiver is collecting signals from wireless transmitters.

The external calibration method provides an absolute calibration of asingle channel and the internal calibration method then calibrates eachother channel relative to the channel that had been absolutelycalibrated. The comb signal is particularly suited as a stable widebandsignal because it can be easily generated using a stored replica of thesignal and a digital to analog converter.

External Calibration Using Wideband Calibration Signal

The external calibration method described next may be used in connectionwith an SCS 10 receiver system characterized by a time- andfrequency-varying transfer function, which preferably includes theantennas, filters, amplifiers, duplexors, multi-couplers, splitters, andcabling associated with the SCS receiver system. The method includes thestep of transmitting a stable, known wideband calibration signal from anexternal transmitter. The wideband calibration signal is then used toestimate the transfer function across a prescribed bandwidth of the SCSreceiver system. The estimate of the transfer function is subsequentlyemployed to mitigate the effects of variation of the transfer functionon subsequent TDOA/FDOA measurements. The external transmission ispreferably of short duration and low power to avoid interference withthe wireless communications system hosting the Wireless Location System.

In the preferred method, the SCS receiver system is synchronized withthe external transmitter. Such synchronization may be performed usingGPS timing units. Moreover, the receiver system may be programmed toreceive and process the entire wideband of the calibration signal onlyat the time that the calibration signal is being sent. The receiversystem will not perform calibration processing at any time other thanwhen in synchronization with the external calibration transmissions. Inaddition, a wireless communications link is used between the receiversystem and the external calibration transmitter to exchange commands andresponses. The external transmitter may use a directional antenna todirect the wideband signal only at the antennas of the SCS receiversystem. Such as directional antenna may be a Yagi antenna (i.e. linearend-fire array). The calibration method preferably includes making theexternal transmission only when the directional antenna is aimed at thereceiver system's antennas and the risk of multipath reflection is low.

Calibrating for Station Biases

Another aspect of the present invention concerns a calibration method tocorrect for station biases in a SCS receiver system. The “station bias”is defined as the finite delay between when an RF signal from a wirelesstransmitter reaches the antenna and when that same signal reached thewideband receiver. The inventive method includes the step of measuringthe length of the cable from the antennas to the filters and determiningthe corresponding delays associated with the cable length. In addition,the method includes injecting a known signal into the filter, duplexor,multi-coupler, or RF splitter and measuring the delay and phase responseversus frequency response from the input of each device to the widebandreceiver. The delay and phase values are then combined and used tocorrect subsequent location measurements. When used with the GPS basedtiming generation described above, the method preferably includescorrecting for the GPS cable lengths. Moreover, an externally generatedreference signal is preferably used to monitor changes in station biasthat may arise due to aging and weather. Finally, the station bias by RFchannel and for each receiver system in the Wireless Location System ispreferably stored in tabular form in the Wireless Location System foruse in correcting subsequent location processing.

Performance Monitoring

The Wireless Location System uses methods similar to calibration forperformance monitoring on a regular and ongoing basis. These methods aredepicted in the flowcharts of FIGS. 2K and 2L. Two methods ofperformance monitoring are used: fixed phones and drive testing ofsurveyed points. The fixed phone method comprises the following steps(see FIG. 2K):

standard wireless transmitters are permanently placed at various pointswithin the coverage area of the Wireless Location System (these are thenknown as the fixed phones) (step S-30);

the points at which the fixed phones have been placed are surveyed sothat their location is precisely known to within a predetermineddistance, for example ten feet (step S-31);

the surveyed locations are stored in a table in the AP 14 (step S-32);

the fixed phones are permitted to register on the wirelesscommunications system, at the rate and interval set by the wirelesscommunications system for all wireless transmitters on the system (stepS-33);

at each registration transmission by a fixed phone, the WirelessLocation System locates the fixed phone using normal location processing(as with the calibration transmitters, the Wireless Location System canidentify a transmission as being from a fixed phone by storing theidentities in a table) (step S-34);

the Wireless Location System computes an error between the calculatedlocation determined by the location processing and the stored locationdetermined by survey (step S-35);

the location, the error value, and other measured parameters are storedalong with a time stamp in a database in the AP 14 (step S-36);

the AP 14 monitors the instant error and other measured parameters(collectively referred to as an extended location record) andadditionally computes various statistical values of the error(s) andother measured parameters (step S-37); and

if any of the error or other values exceed a pre-determined threshold ora historical statistical value, either instantaneously or afterperforming statistical filtering over a prescribed number of locationestimates, the AP 14 signals an alarm to the operator of the WirelessLocation System (step S-38).

The extended location record includes a large number of measuredparameters usefully for analyzing the instant and historical performanceof the Wireless Location System. These parameters include: the RFchannel used by the wireless transmitter, the antenna port(s) used bythe Wireless Location System to demodulate the wireless transmission,the antenna ports from which the Wireless Location System requested RFdata, the peak, average, and variance in power of the transmission overthe interval used for location processing, the SCS 10 and antenna portchosen as the reference for location processing, the correlation valuefrom the cross-spectra correlation between every other SCS 10 andantenna used in location processing and the reference SCS 10 andantenna, the delay value for each baseline, the multipath mitigationparameters, and the residual values remaining after the multipathmitigation calculations. Any of these measured parameters can bemonitored by the Wireless Location System for the purpose of determininghow the Wireless Location System is performing. One example of the typeof monitoring performed by the Wireless Location System may be thevariance between the instant value of the correlation on a baseline andthe historical range of the correlation value. Another may be thevariance between the instant value of the received power at a particularantenna and the historical range of the received power. Many otherstatistical values can be calculated and this list is not exhaustive.

The number of fixed phones placed into the coverage area of the WirelessLocation System can be determined based upon the density of the cellsites, the difficulty of the terrain, and the historical ease with whichwireless communications systems have performed in the area. Typicallythe ratio is about one fixed phone for every six cell sites, however insome areas a ratio of one to one may be required. The fixed phonesprovide a continuous means to monitor the performance of the WirelessLocation System, as well as the monitor any changes in the frequencyplan that the carrier may have made. Many times, changes in thefrequency plan will cause a variation in the performance of the WirelessLocation System and the performance monitoring of the fixed phonesprovide an immediate indication to the Wireless Location Systemoperator.

Drive testing of surveyed points is very similar to the fixed phonemonitoring. Fixed phones typically can only be located indoors whereaccess to power is available (i.e. the phones must be continuouslypowered on to be effective). To obtain a more complete measurement ofthe performance of the location performance, drive testing of outdoortest points is also performed. Referring to FIG. 2L, as with the fixedphones, prescribed test points throughout the coverage area of theWireless Location System are surveyed to within ten feet (step S-40).Each test point is assigned a code, where the code consists of either a“*” or a “#”, followed by a sequence number (step S-41). For example,“*1001” through “*1099” may be a sequence of 99 codes used for testpoints. These codes should be sequences, that when dialed, aremeaningless to the wireless communications system (i.e., the codes donot cause a feature or other translation to occur in the MSC, except foran intercept message). The AP 14 stores the code for each test pointalong with the surveyed location (step S-42). Subsequent to theseinitial steps, any wireless transmitter dialing any of the codes will betriggered and located using normal location processing (steps S-43 andS-44). The Wireless Location System automatically computes an errorbetween the calculated location determined by the location processingand the stored location determined by survey, and the location and theerror value are stored along with a time stamp in a database in the AP14 (steps S-45 and S-46). The AP 14 monitors the instant error, as wellas various historical statistical values of the error. If the errorvalues exceed a pre-determined threshold or a historical statisticalvalue, either instantaneously or after performing statistical filteringover a prescribed number of location estimates, the AP 14 signals analarm to the operator of the Wireless Location System (step S-47).

TDOA Location Processor (TLP)

The TLP 12, depicted in FIGS. 1, 1A and 3, is a centralized digitalsignal processing system that manages many aspects of the WirelessLocation System, especially the SCS's 10, and provides control over thelocation processing. Because location processing is DSP intensive, oneof the major advantages of the TLP 12 is that the DSP resources can beshared among location processing initiated by transmissions at any ofthe SCS's 10 in a Wireless Location System. That is, the additional costof DSP's at the SCS's 10 is reduced by having the resource centrallyavailable. As shown in FIG. 3, there are three major components of theTLP 12: DSP modules 12-1, T1/E1 communications modules 12-2 and acontroller module 12-3.

The T1/E1 communications modules 12-2 provide the communicationsinterface to the SCS's 10 (T1 and E1 are standard communications speedsavailable throughout the world). Each SCS 10 communicates to a TLP 12using one or more DS0's (which are typically 56 Kbps or 64 Kbps). EachSCS 10 typically connects to a fractional T1 or E1 circuit, using, e.g.,a drop and insert unit or channel bank at the cell site. Frequently,this circuit is shared with the base station, which communicates withthe MSC. At a central site, the DS0's assigned to the base station areseparated from the DS0's assigned to the SCS's 10. This is typicallyaccomplished external to the TLP 12 using a digital access and controlsystem (DACS) 13A that not only separates the DS0's but also grooms theDS0's from multiple SCS's 10 onto full T1 or E1 circuits. These circuitsthen connect from the DACS 13A to the DACS 13B and then to the T1/E1communications module on the TLP 12. Each T1/E1 communications modulecontains sufficient digital memory to buffer packets of data to and fromeach SCS 10 communicating with the module. A single TLP chassis maysupport one or more T1/E1 communications modules.

The DSP modules 12-1 provide a pooled resource for location processing.A single module may typically contain two to eight digital signalprocessors, each of which are equally available for location processing.Two types of location processing are supported: central based andstation based, which are described in further detail below. The TLPcontroller 12-3 manages the DSP module(s) 12-1 to obtain optimalthroughput. Each DSP module contains sufficient digital memory to storeall of the data necessary for location processing. A DSP is not engageduntil all of the data necessary to begin location processing has beenmoved from each of the involved SCS's 10 to the digital memory on theDSP module. Only then is a DSP given the specific task to locate aspecific wireless transmitter. Using this technique, the DSP's, whichare an expensive resource, are never kept waiting. A single TLP chassismay support one or more DSP modules.

The controller module 12-3 provides the real time management of alllocation processing within the Wireless Location System. The AP 14 isthe top-level management entity within the Wireless Location System,however its database architecture is not sufficiently fast to conductthe real time decision making when transmissions occur. The controllermodule 12-3 receives messages from the SCS's 10, including: status,spectral energy in various channels for various antennas, demodulatedmessages, and diagnostics. This enables the controller to continuouslydetermine events occurring in the Wireless Location System, as well asto send commands to take certain actions. When a controller modulereceives demodulated messages from SCS's 10, the controller moduledecides whether location processing is required for a particularwireless transmission. The controller module 12-3 also determines whichSCS's 10 and antennas to use in location processing, including whetherto use central based or station based location processing. Thecontroller module commands SCS's 10 to return the necessary data, andcommands the communications modules and DSP modules to sequentiallyperform their necessary roles in location processing. These steps aredescribed below in further detail.

The controller module 12-3 maintains a table known as the Signal ofInterest Table (SOIT). This table contains all of the criteria that maybe used to trigger location processing on a particular wirelesstransmission. The criteria may include, for example, the Mobile IdentityNumber, the Mobile Station ID, the Electronic Serial Number, dialeddigits, System ID, RF channel number, cell site number or sector number,type of transmission, and other types of data elements. Some of thetrigger events may have higher or lower priority levels associated withthem for use in determining the order of processing. Higher prioritylocation triggers will always be processing before lower prioritylocation triggers. However, a lower priority trigger that has alreadybegun location processing will complete the processing before beingassigned to a higher priority task. The master Tasking List for theWireless Location System is maintained on the AP 14, and copies of theTasking List are automatically downloaded to the Signal of InterestTable in each TLP 12 in the Wireless Location System. The full Signal ofInterest Table is downloaded to a TLP 12 when the TLP 12 is reset orfirst starts. Subsequent to those two events, only changes aredownloaded from the AP 14 to each TLP 12 to conserve communicationsbandwidth. The TLP 12 to AP 14 communications protocol preferablycontains sufficient redundancy and error checking to prevent incorrectdata from ever being entered into the Signal of Interest Table. When theAP 14 and TLP 12 periodically have spare processing capacity available,the AP 14 reconfirms entries in the Signal of Interest Table to ensurethat all Signal of Interest Table entries in the Wireless LocationSystem are in full synchronization.

Each TLP chassis has a maximum capacity associated with the chassis. Forexample, a single TLP chassis may only have sufficient capacity tosupport between 48 and 60 SCS's 10. When a wireless communicationssystem is larger that the capacity of a single TLP chassis, multiple TLPchassis are connected together using Ethernet networking. The controllermodule 12-3 is responsible for inter-TLP communications and networking,and communicates with the controller modules in other TLP chassis andwith Application Processors 14 over the Ethernet network. Inter-TLPcommunications is required when location processing requires the use ofSCS's 10 that are connected to different TLP chassis. Locationprocessing for each wireless transmission is assigned to a single DSPmodule in a single TLP chassis. The controller modules 12-3 in TLPchassis select the DSP module on which to perform location processing,and then route all of the RF data used in location processing to thatDSP module. If RF data is required from the SCS's 10 connected to morethat one TLP 12, then the controller modules in all necessary TLPchassis communicate to move the RF data from all necessary SCS's 10 totheir respective connected TLP's 12 and then to the DSP module and TLPchassis assigned to the location processing. The controller modulesupports two fully independent Ethernet networks for redundancy. A breakor failure in any one network causes the affected TLP's 12 toimmediately shift all communications to the other network.

The controller modules 12-3 maintain a complete network map of theWireless Location System, including the SCS's 10 associated with eachTLP chassis. The network map is a table stored in the controller modulecontaining a list of the candidate SCS/antennas that may be used inlocation processing, and various parameters associated with each of theSCS/antennas. The structure of an exemplary network map is depicted inFIG. 3A. There is a separate entry in the table for each antennaconnected to an SCS 10. When a wireless transmission occurs in an areathat is covered by SCS's 10 communicating with more than one TLPchassis, the controller modules in the involved TLP chassis determinewhich TLP chassis will be the “master” TLP chassis for the purpose ofmanaging location processing. Typically, the TLP chassis associated withthe SCS 10 that has the primary channel assignment for the wirelesstransmission is assigned to be the master. However, another TLP chassismay be assigned instead if that TLP temporarily has no DSP resourcesavailable for location processing, or if most of the SCS's 10 involvedin location processing are connected to another TLP chassis and thecontroller modules are minimizing inter-TLP communications. Thisdecision making process is fully dynamic, but is assisted by tables inthe TLP 12 that pre-determine the preferred TLP chassis for everyprimary channel assignment. The tables are created by the operator ofthe Wireless Location System, and programmed using the NetworkOperations Console.

The networking described herein functions for both TLP chassisassociated with the same wireless carrier, as well as for chassis thatoverlap or border the coverage area between two wireless carriers. Thusit is possible for a TLP 12 belonging to a first wireless carrier to benetworked and therefore receive RF data from a TLP 12 (and the SCS's 10associated with that TLP 12) belonging to a second wireless carrier.This networking is particularly valuable in rural areas, where theperformance of the Wireless Location System can be enhanced by deployingSCS's 10 at cell sites of multiple wireless carriers. Since in manycases wireless carriers do not collocate cell sites, this featureenables the Wireless Location System to access more geographicallydiverse antennas than might be available if the Wireless Location Systemused only the cell sites from a single wireless carrier. As describedbelow, the proper selection and use of antennas for location processingcan enhance the performance of the Wireless Location System.

The controller module 12-3 passes many messages, including locationrecords, to the AP 14, many of which are described below. Usually,however, demodulated data is not passed from the TLP 12 to the AP 14.If, however, the TLP 12 receives demodulated data from a particularwireless transmitter and the TLP 12 identifies the wireless transmitteras being a registered customer of a second wireless carrier in adifferent coverage area, the TLP 12 may pass the demodulated data to thefirst (serving) AP 14A. This will enable the first AP 14A to communicatewith a second AP 14B associated with the second wireless carrier, anddetermine whether the particular wireless transmitter has registered forany type of location services. If so, the second AP 14B may instruct thefirst AP 14A to place the identity of the particular wirelesstransmitter into the Signal of Interest Table so that the particularwireless transmitter will be located for as long as the particularwireless transmitter is in the coverage area of the first WirelessLocation System associated with the first AP 14A. When the firstWireless Location System has detected that the particular wirelesstransmitter has not registered in a time period exceeding apredetermined threshold, the first AP 14A may instruct the second AP 14Bthat the identity of the particular wireless transmitter is beingremoved from the Signal of Interest Table for the reason of no longerbeing present in the coverage area associated with the first AP 14A.

Diagnostic Port

The TLP 12 supports a diagnostic port that is highly useful in theoperation and diagnosis of problems within the Wireless Location System.This diagnostic port can be accessed either locally at a TLP 12 orremotely over the Ethernet network connecting the TLP's 12 to the AP's.The diagnostic port enables an operator to write to a file all of thedemodulation and RF data received from the SCS's 10, as well as theintermediate and final results of all location processing. This data iserased from the TLP 12 after processing a location estimate, andtherefore the diagnostic port provides the means to save the data forlater post-processing and analysis. The inventor's experience inoperating large scale wireless location systems is that a very smallnumber of location estimates can occasionally have very large errors,and these large errors can dominate the overall operating statistics ofthe Wireless Location System over any measurement period. Therefore, itis important to provide the operator with a set of tools that enable theWireless Location System to detect and trap the cause of the very largeerrors to diagnose and mitigate those errors. The diagnostic port can beset to save the above information for all location estimates, forlocation estimates from particular wireless transmitters or atparticular test points, or for location estimates that meet a certaincriteria. For example, for fixed phones or drive testing of surveyedpoints, the diagnostic port can determine the error in the locationestimate in real time and then write the above described informationonly for those location estimates whose error exceeds a predeterminedthreshold. The diagnostic port determines the error in real time bystoring the surveyed latitude, longitude coordinate of each fixed phoneand drive test point in a table, and then calculating a radial errorwhen a location estimate for the corresponding test point is made.

Redundancy

The TLP's 12 implement redundancy using several inventive techniques,allowing the Wireless Location System to support an M plus N redundancymethod. M plus N redundancy means that N redundant (or standby) TLPchassis are used to provide full redundant backup to M online TLPchassis. For example, M may be ten and N may be two.

First, the controller modules in different TLP chassis continuouslyexchange status and “heartbeat” messages at predetermined time intervalsbetween themselves and with every AP 14 assigned to monitor the TLPchassis. Thus, every controller module has continuous and full status ofevery other controller module in the Wireless Location System. Thecontroller modules in different TLP chassis periodically select onecontroller module in one TLP 12 to be the master controller for a groupof TLP chassis. The master controller may decide to place a first TLPchassis into off-line status if the first TLP 12A reports a failed ordegraded condition in its status message, or if the first TLP 12A failsto report any status or heartbeat messages within its assigned andpre-determined time. If the master controller places a first TLP 12Ainto off-line status, the master controller may assign a second TLP 12Bto perform a redundant switchover and assume the tasks of the off-linefirst TLP 12A. The second TLP 12B is automatically sent theconfiguration that had been loaded into the first TLP 12A; thisconfiguration may be downloaded from either the master controller orfrom an AP 14 connected to the TLP's 12. The master controller may be acontroller module on any one of the TLP's 12 that is not in off-linestatus, however there is a preference that the master controller be acontroller module in a standby TLP 12. When the master controller is thecontroller module in a stand-by TLP 12, the time required to detect afailed first TLP 12A, place the first TLP 12A into off-line status, andthen perform a redundant switchover can be accelerated.

Second, all of the T1 or E1 communications between the SCS's 10 and eachof the TLP T1/E1 communications modules 12-2 are preferably routedthrough a high-reliability DACS that is dedicated to redundancy control.The DACS 13B is connected to every groomed T1/E1 circuit containingDS0's from SCS's 10 and is also connected to every T1/E1 communicationsmodule 12-2 of every TLP 12. Every controller module at every TLP 12contains a map of the DACS 13B that describes the DACS' connection listand port assignments. This DACS 13B is connected to the Ethernet networkdescribed above and can be controlled by any of the controller modules12-3 at any of the TLP's 12. When a second TLP 12 is placed intooff-line status by a master controller, the master controller sendscommands to the DACS 13B to switch the groomed T1/E1 circuitcommunicating with the first TLP 12A to a second TLP 12B which had beenin standby status. At the same time, the AP 14 downloads the completeconfiguration file that was being used by the second (and now off-line)TLP 12B to the third (and now online) TLP 12C. The time from the firstdetection of a failed first TLP chassis to the complete switch-over andassumption of processing responsibilities by a third TLP chassis istypically less than few seconds. In many cases, no RF data is lost bythe SCS's 10 associated with the failed first TLP chassis, and locationprocessing can continue without interruption. At the time of a TLPfail-over when a first TLP 12A is placed into off-line status, the NOC16 creates an alert to notify the Wireless Location System operator thatthe event has occurred.

Third, each TLP chassis contains redundant power supplies, fans, andother components. A TLP chassis can also support multiple DSP modules,so that the failure of a single DSP module or even a single DSP on a DSPmodule reduces the overall amount of processing resources available butdoes not cause the failure of the TLP chassis. In all of the casesdescribed in this paragraph, the failed component of the TLP 12 can bereplaced without placing the entire TLP chassis into off-line status.For example, if a single power supply fails, the redundant power supplyhas sufficient capacity to singly support the load of the chassis. Thefailed power supply contains the necessary circuitry to remove itselffrom the load of the chassis and not cause further degradation in thechassis. Similarly, a failed DSP module can also remove itself from theactive portions of the chassis, so as to not cause a failure of thebackplane or other modules. This enables the remainder of the chassis,including the second DSP module, to continue to function normally. Ofcourse, the total processing throughput of the chassis is reduced but atotal failure is avoided.

Application Processor (AP) 14

The AP 14 is a centralized database system, comprising a number ofsoftware processes that manage the entire Wireless Location System,provide interfaces to external users and applications, store locationrecords and configurations, and support various application-relatedfunctionality. The AP 14 uses a commercial hardware platform that issized to match the throughput of the Wireless Location System. The AP 14also uses a commercial relational database system (RDBMS), which hasbeen significantly customized to provide the functionality describedherein. While the SCS 10 and TLP 12 preferably operate together on apurely real time basis to determine location and create locationrecords, the AP 14 can operate on both a real time basis to store andforward location records and a non-real time basis to post-processlocation records and provide access and reporting over time. The abilityto store, retrieve, and post-process location records for various typesof system and application analysis has proven to be a powerful advantageof the present invention. The main collection of software processes isknown as the ApCore, which is shown in FIG. 4 and includes the followingfunctions:

The AP Performance Guardian (ApPerfGuard) is a dedicated softwareprocess that is responsible for starting, stopping, and monitoring mostother ApCore processes as well as ApCore communications with the NOC 16.Upon receiving a configuration update command from the NOC, ApPerfGuardupdates the database and notifies all other processes of the change.ApPerfGuard starts and stops appropriate processes when the NOC directsthe ApCore to enter specific run states, and constantly monitors othersoftware processes scheduled to be running to restart them if they haveexited or stopping and restarting any process that is no longer properlyresponding. ApPerfGuard is assigned to one of the highest processingpriorities so that this process cannot be blocked by another processthat has “run away”. ApPerfGuard is also assigned dedicated memory thatis not accessible by other software processes to prevent any possiblecorruption from other software processes.

The AP Dispatcher (ApMnDsptch) is a software process that receiveslocation records from the TLP's 12 and forwards the location records toother processes. This process contains a separate thread for eachphysical TLP 12 configured in the system, and each thread receiveslocation records from that TLP 12. For system reliability, the ApCoremaintains a list containing the last location record sequence numberreceived from each TLP 12, and sends this sequence number to the TLP 12upon initial connection. Thereafter, the AP 14 and the TLP 12 maintain aprotocol whereby the TLP 12 sends each location record with a uniqueidentifier. ApMnDsptch forwards location records to multiple processes,including Ap911, ApDbSend, ApDbRecvLoc, and ApDbFileRecv.

The AP Tasking Process (ApDbSend) controls the Tasking List within theWireless Location System. The Tasking List is the master list of all ofthe trigger criteria that determines which wireless transmitters will belocated, which applications created the criteria, and which applicationscan receive location record information. The ApDbSend process contains aseparate thread for each TLP 12, over which the ApDbSend synchronizesthe Tasking List with the Signal of Interest Table on each TLP 12.ApDbSend does not send application information to the Signal of InterestTable, only the trigger criteria. Thus the TLP 12 does not know why awireless transmitter must be located. The Tasking List allows wirelesstransmitters to be located based upon Mobile Identity Number (MIN),Mobile Station Identifier (MSID), Electronic Serial Number (ESN) andother identity numbers, dialed sequences of characters and/or digits,home System ID (SID), originating cell site and sector, originating RFchannel, or message type. The Tasking List allows multiple applicationsto receive location records from the same wireless transmitter. Thus, asingle location record from a wireless transmitter that has dialed “911”can be sent, for example, to a 911 PSAP, a fleet management application,a traffic management application, and to an RF optimization application.

The Tasking List also contains a variety of flags and field for eachtrigger criteria, some of which are described elsewhere in thisspecification. One flag, for example, specifies the maximum time limitbefore which the Wireless Location System must provide a rough or finalestimate of the wireless transmitter. Another flag allows locationprocessing to be disabled for a particular trigger criteria such as theidentity of the wireless transmitter. Another field contains theauthentication required to make changes to the criteria for a particulartrigger; authentication enables the operator of the Wireless LocationSystem to specify which applications are authorized to add, delete, ormake changes to any trigger criteria and associated fields or flags.Another field contains the Location Grade of Service associated with thetrigger criteria; Grade of Service indicates to the Wireless LocationSystem the accuracy level and priority level desired for the locationprocessing associated with a particular trigger criteria. For example,some applications may be satisfied with a rough location estimate(perhaps for a reduced location processing fee), while otherapplications may be satisfied with low priority processing that is notguaranteed to complete for any given transmission (and which may bepre-empted for high priority processing tasks). The Wireless LocationSystem also includes means to support the use of wildcards for triggercriteria in the Tasking List. For example, a trigger criteria can beentered as “MIN=215555****”. This will cause the Wireless LocationSystem to trigger location processing for any wireless transmitter whoseMIN begins with the six digits 215555 and ends with any following fourdigits.

The wildcard characters can be placed into any position in a triggercriteria. This feature can save on the number of memory locationsrequired in the Tasking List and Signal of Interest Table by groupingblocks of related wireless transmitters together.

ApDbSend also supports dynamic tasking. For example, the MIN, ESN, MSID,or other identity of any wireless transmitter that has dialed “911” willautomatically be placed onto the Tasking List by ApDbSend for one hour.Thus, any further transmissions by the wireless transmitter that dialed“911” will also be located in case of further emergency. For example, ifa PSAP calls back a wireless transmitter that had dialed “911” withinthe last hour, the Wireless Location System will trigger on the pageresponse message from the wireless transmitter, and can make this newlocation record available to the PSAP. This dynamic tasking can be setfor any interval of time after an initiation event, and for any type oftrigger criteria. The ApDbSend process is also a server for receivingtasking requests from other applications. These applications, such asfleet management, can send tasking requests via a socket connection, forexample. These applications can either place or remove trigger criteria.ApDbSend conducts an authentication process with each application andverifying that at least that the application has been authorized toplace or remove trigger criteria, and each application can only changetrigger criteria related to that application.

The AP 911 Process (Ap911) manages each interface between the WirelessLocation System and E9-1-1 network elements, such as tandem switches,selective routers, ALI databases and/or PSAPs. The Ap911 processcontains a separate thread for each connection to a E9-1-1 networkelement, and can support more than one thread to each network element.The Ap911 process can simultaneously operate in many modes based uponuser configuration, and as described herein. The timely processing ofE9-1-1 location records is one of the highest processing priorities inthe AP 14, and therefore the Ap911 executes entirely out of randomaccess memory (RAM) to avoid the delay associated with first storing andthen retrieving a location record from any type of disk. When ApMnDsptchforwards a location record to Ap911, Ap911 immediately makes a routingdetermination and forwards the location record over the appropriateinterface to a E9-1-1 network element. A separate process, operating inparallel, records the location record into the AP 14 database.

The AP 14, through the Ap911 process and other processes, supports twomodes of providing location records to applications, including E9-1-1:“push” and “pull” modes. Applications requesting push mode receive alocation record as soon as it is available from the AP 14. This mode isespecially effective for E9-1-1 which has a very time critical need forlocation records, since E9-1-1 networks must route wireless 9-1-1 callsto the correct PSAP within a few seconds after a wireless caller hasdialed “911”. Applications requesting pull mode do not automaticallyreceive location records, but rather must send a query to the AP 14regarding a particular wireless transmitter in order to receive thelast, or any other location record, about the wireless transmitter. Thequery from the application can specify the last location record, aseries of location records, or all location records meeting a specifictime or other criteria, such as type of transmission. An example of theuse of pull mode in the case of a “911” call is the E9-1-1 network firstreceiving the voice portion of the “911” call and then querying the AP14 to receive the location record associated with that call.

When the Ap911 process is connected to many E9-1-1 networks elements,Ap911 must determine to which E9-1-1 network element to push thelocation record (assuming that “push” mode has been selected). The AP 14makes this determination using a dynamic routing table. The dynamicrouting table is used to divide a geographic region into cells. Eachcell, or entry, in the dynamic routing table contains the routinginstructions for that cell. It is well known that one minute of latitudeis 6083 feet, which is about 365 feet per millidegree. Additionally, oneminute of longitude is cosine(latitude) times 6083 feet, which for thePhiladelphia area is about 4659 feet, or about 280 feet per millidegree.A table of size one thousand by one thousand, or one million cells, cancontain the routing instructions for an area that is about 69 miles by53 miles, which is larger than the area of Philadelphia in this example,and each cell could contain a geographic area of 365 feet by 280 feet.The number of bits allocated to each entry in the table must only beenough to support the maximum number of routing possibilities. Forexample, if the total number of routing possibilities is sixteen orless, then the memory for the dynamic routing table is one million timesfour bits, or one-half megabyte. Using this scheme, an area the size ofPennsylvania could be contained in a table of approximately twentymegabytes or less, with ample routing possibilities available. Given therelatively inexpensive cost of memory, this inventive dynamic routingtable provides the AP 14 with a means to quickly push the locationrecords for “911” calls only to the appropriate E9-1-1 network element.

The AP 14 allows each entry in dynamic routing to be populated usingmanual or automated means. Using the automated means, for example, anelectronic map application can create a polygon definition of thecoverage area of a specific E9-1-1 network element, such as a PSAP. Thepolygon definition is then translated into a list of latitude, longitudepoints contained within the polygon. The dynamic routing table cellcorresponding to each latitude, longitude point is then given therouting instruction for that E9-1-1 network element that is responsiblefor that geographic polygon.

When the Ap911 process receives a “911” location record for a specificwireless transmitter, Ap911 converts the latitude, longitude into theaddress of a specific cell in the dynamic routing table. Ap911 thenqueries the cell to determine the routing instructions, which may bepush or pull mode and the identity of the E9-1-1 network elementresponsible for serving the geographic area in which the “911” calloccurred. If push mode has been selected, then Ap911 automaticallypushes the location record to that E9-1-1 network element. If pull modehas been selected, then Ap911 places the location record into a circulartable of “911” location records and awaits a query.

The dynamic routing means described above entails the use of ageographically defined database that may be applied to otherapplications in addition to 911, and is therefore supported by otherprocesses in addition to Ap911. For example, the AP 14 can automaticallydetermine the billing zone from which a wireless call was placed for aLocation Sensitive Billing application. In addition, the AP 14 mayautomatically send an alert when a particular wireless transmitter hasentered or exited a prescribed geographic area defined by anapplication. The use of particular geographic databases, dynamic routingactions, any other location triggered actions are defined in the fieldsand flags associated with each trigger criteria. The Wireless LocationSystem includes means to easily manage these geographically defineddatabases using an electronic map that can create polygons encompassinga prescribed geographic area. The Wireless Location System extracts fromthe electronic map a table of latitude, longitude points contained withthe polygon. Each application can use its own set of polygons, and candefine a set of actions to be taken when a location record for atriggered wireless transmission is contained within each polygon in theset.

The AP Database Receive Process (ApDbRecvLoc) receives all locationrecords from ApMnDsptch via shared memory, and places the locationrecords into the AP location database. ApDbRecvLoc starts ten threadsthat each retrieve location records from shared memory, validate eachrecord before inserting the records into the database, and then insertsthe records into the correct location record partition in the database.To preserve integrity, location records with any type of error are notwritten into the location record database but are instead placed into anerror file that can be reviewed by the Wireless Location System operatorand then manually entered into the database after error resolution. Ifthe location database has failed or has been placed into off-linestatus, location records are written to a flat file where they can belater processed by ApDbFileRecv.

The AP File Receive Process (ApDbFileRecv) reads flat files containinglocation records and inserts the records into the location database.Flat files are a safe mechanism used by the AP 14 to completely preservethe integrity of the AP 14 in all cases except a complete failure of thehard disk drives. There are several different types of flat files readby ApDbFileRecv, including Database Down, Synchronization, Overflow, andFixed Error. Database Down flat files are written by the ApDbRecvLocprocess if the location database is temporarily inaccessible; this fileallows the AP 14 to ensure that location records are preserved duringthe occurrence of this type of problem. Synchronization flat files arewritten by the ApLocSync process (described below) when transferringlocation records between pairs of redundant AP systems. Overflow flatfiles are written by ApMnDsptch when location records are arriving intothe AP 14 at a rate faster than ApDbRecvLoc can process and insert therecords into the location database. This may occur during very high peakrate periods. The overflow files prevent any records from being lostduring peak periods. The Fixed Error flat files contain location recordsthat had errors but have now been fixed, and can now be inserted intothe location database.

Because the AP 14 has a critical centralized role in the WirelessLocation System, the AP 14 architecture has been designed to be fullyredundant. A redundant AP 14 system includes fully redundant hardwareplatforms, fully redundant RDBMS, redundant disk drives, and redundantnetworks to each other, the TLP's 12, the NOC's 16, and externalapplications. The software architecture of the AP 14 has also beendesigned to support fault tolerant redundancy. The following examplesillustrate functionality supported by the redundant AP's. Each TLP 12sends location records to both the primary and the redundant AP 14 whenboth AP's are in an online state. Only the primary AP 14 will processincoming tasking requests, and only the primary AP 14 will acceptconfiguration change requests from the NOC 16. The primary AP 14 thensynchronizes the redundant AP 14 under careful control. Both the primaryand redundant AP's will accept basic startup and shutdown commands fromthe NOC. Both AP's constantly monitor their own system parameters andapplication health and monitor the corresponding parameters for theother AP 14, and then decide which AP 14 will be primary and which willbe redundant based upon a composite score. This composite score isdetermined by compiling errors reported by various processes to a sharedmemory area, and monitoring swap space and disk space. There are severalprocesses dedicated to supporting redundancy.

The AP Location Synchronization Process (ApLocSync) runs on each AP 14and detects the need to synchronize location records between AP's, andthen creates “sync records” that list the location records that need tobe transferred from one AP 14 to another AP 14. The location records arethen transferred between AP's using a socket connection. ApLocSynccompares the location record partitions and the location record sequencenumbers stored in each location database. Normally, if both the primaryand redundant AP 14 are operating properly, synchronization is notneeded because both AP's are receiving location records simultaneouslyfrom the TLP's 12. However, if one AP 14 fails or is placed in anoff-line mode, then synchronization will later be required. ApLocSync isnotified whenever ApMnDsptch connects to a TLP 12 so it can determinewhether synchronization is required.

The AP Tasking Synchronization Process (ApTaskSync) runs on each AP 14and synchronizes the tasking information between the primary AP 14 andthe redundant AP 14. ApTaskSync on the primary AP 14 receives taskinginformation from ApDbSend, and then sends the tasking information to theApTaskSync process on the redundant AP 14. If the primary AP 14 were tofail before ApTaskSync had completed replicating tasks, then ApTaskSyncwill perform a complete tasking database synchronization when the failedAP 14 is placed back into an online state.

The AP Configuration Synchronization Process (ApConfigSync) runs on eachAP 14 and synchronizes the configuration information between the primaryAP 14 and the redundant AP 14. ApConfigSync uses a RDBMS replicationfacility. The configuration information includes all information neededby the SCS's 10, TLP's 12, and AP's 14 for proper operation of theWireless Location System in a wireless carrier's network.

In addition to the core functions described above, the AP 14 alsosupports a large number of processes, functions, and interfaces usefulin the operation of the Wireless Location System, as well as useful forvarious applications that desire location information. While theprocesses, functions, and interfaces described herein are in thissection pertaining to the AP 14, the implementation of many of theseprocesses, functions, and interfaces permeates the entire WirelessLocation System and therefore their inventive value should be not readas being limited only to the AP 14.

Roaming

The AP 14 supports “roaming” between wireless location systems locatedin different cities or operated by different wireless carriers. If afirst wireless transmitter has subscribed to an application on a firstWireless Location System, and therefore has an entry in the Tasking Listin the first AP 14 in the first Wireless Location System, then the firstwireless transmitter may also subscribe to roaming. Each AP 14 and TLP12 in each Wireless Location System contains a table in which a list ofvalid “home” subscriber identities is maintained. The list is typicallya range, and for example, for current cellular telephones, the range canbe determined by the NPA/NXX codes (or area code and exchange)associated with the MIN or MSID of cellular telephones. When a wirelesstransmitter meeting the “home” criteria makes a transmission, a TLP 12receives demodulated data from one or more SCS's 10 and checks thetrigger information in the Signal of Interest Table. If any triggercriterion is met, the location processing begins on that transmission;otherwise, the transmission is not processed by the Wireless LocationSystem.

When a first wireless transmitter not meeting the “home” criterion makesa transmission in a second Wireless Location System, the second TLP 12in the second Wireless Location System checks the Signal of InterestTable for a trigger. One of three actions then occurs: (i) if thetransmission meets an already existing criteria in the Signal ofInterest Table, the transmitter is located and the location record isforwarded from the second AP 14 in the second Wireless Location Systemto the first AP 14 in the first Wireless Location System; (ii) if thefirst wireless transmitter has a “roamer” entry in the Signal ofInterest Table indicating that the first wireless transmitter has“registered” in the second Wireless Location System but has no triggercriteria, then the transmission is not processed by the second WirelessLocation System and the expiration timestamp is adjusted as describedbelow; (iii) if the first wireless transmitter has no “roamer” entry andtherefore has not “registered”, then the demodulated data is passed fromthe TLP 12 to the second AP 14.

In the third case above, the second AP 14 uses the identity of the firstwireless transmitter to identify the first AP 14 in the first WirelessLocation System as the “home” Wireless Location System of the firstwireless transmitter. The second AP 14 in the second Wireless LocationSystem sends a query to the first AP 14 in the first Wireless LocationSystem to determine whether the first wireless transmitter hassubscribed to any location application and therefore has any triggercriteria in the Tasking List of the first AP 14. If a trigger is presentin the first AP 14, the trigger criteria, along with any associatedfields and flags, is sent from the first AP 14 to the second AP 14 andentered in the Tasking List and the Signal of Interest Table as a“roamer” entry with trigger criteria. If the first AP 14 responds to thesecond AP 14 indicating that the first wireless transmitter has notrigger criteria, then the second AP 14 “registers” the first wirelesstransmitter in the Tasking List and the Signal of Interest Table as a“roamer” with no trigger criteria. Thus both current and futuretransmissions from the first wireless transmitter can be positivelyidentified by the TLP 12 in the second Wireless Location System as beingregistered without trigger criteria, and the second AP 14 is notrequired to make additional queries to the first AP 14.

When the second AP 14 registers the first wireless transmitter with aroamer entry in the Tasking List and the Signal of Interest Table withor without trigger criteria, the roamer entry is assigned an expirationtimestamp. The expiration timestamp is set to the current time plus apredetermined first interval. Every time the first wireless transmittermakes a transmission, the expiration timestamp of the roamer entry inthe Tasking List and the Signal of Interest Table is adjusted to thecurrent time of the most recent transmission plus the predeterminedfirst interval. If the first wireless transmitter makes no furthertransmissions prior to the expiration timestamp of its roamer entry,then the roamer entry is automatically deleted. If, subsequent to thedeletion, the first wireless transmitter makes another transmission,then the process of registering occurs again.

The first AP 14 and second AP 14 maintain communications over a widearea network. The network may be based upon TCP/IP or upon a protocolsimilar to the most recent version of IS-41. Each AP 14 incommunications with other AP's in other wireless location systemsmaintains a table that provides the identity of each AP 14 and WirelessLocation System corresponding to each valid range of identities ofwireless transmitters.

Multiple Pass Location Records

Certain applications may require a very fast estimate of the generallocation of a wireless transmitter, followed by a more accurate estimateof the location that can be sent subsequently. This can be valuable, forexample, for E9-1-1 systems that handle wireless calls and must make acall routing decision very quickly, but can wait a little longer for amore exact location to be displayed upon the E9-1-1 call-taker'selectronic map terminal. The Wireless Location System supports theseapplications with an inventive multiple pass location processing mode,described later. The AP 14 supports this mode with multiple passlocation records. For certain entries, the Tasking List in the AP 14contains a flag indicating the maximum time limit before which aparticular application must receive a rough estimate of location, and asecond maximum time limit in which a particular application must receivea final location estimate. For these certain applications, the AP 14includes a flag in the location record indicating the status of thelocation estimate contained in the record, which may, for example, beset to first pass estimate (i.e. rough) or final pass estimate. TheWireless Location System will generally determine the best locationestimate within the time limit set by the application, that is theWireless Location System will process the most amount of RF data thatcan be supported in the time limit. Given that any particular wirelesstransmission can trigger a location record for one or more applications,the Wireless Location System supports multiple modes simultaneously. Forexample, a wireless transmitter with a particular MIN can dial “911”.This may trigger a two-pass location record for the E9-1-1 application,but a single pass location record for a fleet management applicationthat is monitoring that particular MIN. This can be extended to anynumber of applications.

Multiple Demodulation and Triggers

In wireless communications systems in urban or dense suburban areas,frequencies or channels can be re-used several times within relativelyclose distances. Since the Wireless Location System is capable ofindependently detecting and demodulating wireless transmissions withoutthe aid of the wireless communications system, a single wirelesstransmission can frequently be detected and successfully demodulated atmultiple SCS's 10 within the Wireless Location System. This can happenboth intentionally and unintentionally. An unintentional occurrence iscaused by a close frequency re-use, such that a particular wirelesstransmission can be received above a predetermined threshold at morethan one SCS 10, when each SCS 10 believes it is monitoring onlytransmissions that occur only within the cell site collocated with theSCS 10. An intentional occurrence is caused by programming more than oneSCS 10 to detect and demodulate transmissions that occur at a particularcell site and on a particular frequency. As described earlier, this isgenerally used with adjacent or nearby SCS's 10 to provide systemdemodulation redundancy to further increase the probability that anyparticular wireless transmission is successful detected and demodulated.

Either type of event could potentially lead to multiple triggers withinthe Wireless Location System, causing location processing to beinitiated several times for the same transmission. This causes an excessand inefficient use of processing and communications resources.Therefore, the Wireless Location System includes means to detect whenthe same transmission has been detected and demodulated more than once,and to select the best demodulating SCS 10 as the starting point forlocation processing. When the Wireless Location System detects andsuccessfully demodulates the same transmission multiple times atmultiple SCS/antennas, the Wireless Location System uses the followingcriteria to select the one demodulating SCS/antenna to use to continuethe process of determining whether to trigger and possibly initiatelocation processing (again, these criteria may be weighted indetermining the final decision): (i) an SCS/antenna collocated at thecell site to which a particular frequency has been assigned is preferredover another SCS/antenna, but this preference may be adjusted if thereis no operating and on-line SCS/antenna collocated at the cell site towhich the particular frequency has been assigned, (ii) SCS/antennas withhigher average SNR are preferred over those with lower average SNR, and(iii) SCS/antennas with fewer bit errors in demodulating thetransmission are preferred over those with higher bit errors. Theweighting applied to each of these preferences may be adjusted by theoperator of the Wireless Location System to suit the particular designof each system.

Interface to Wireless Communications System

The Wireless Location System contains means to communicate over aninterface to a wireless communications system, such as a mobileswitching center (MSC) or mobile positioning controller (MPC). Thisinterface may be based, for example, on a standard secure protocol suchas the most recent version of the IS-41 or TCP/IP protocols. Theformats, fields, and authentication aspects of these protocols are wellknown. The Wireless Location System supports a variety ofcommand/response and informational messages over this interface that aredesigned to aid in the successful detection, demodulation, andtriggering of wireless transmissions, as well as providing means to passlocation records to the wireless communications system. In particular,this interface provides means for the Wireless Location System to obtaininformation about which wireless transmitters have been assigned toparticular voice channel parameters at particular cell sites. Examplemessages supported by the Wireless Location System over this interfaceto the wireless communications system include the following:

Query on MIN/MDN/MSID/IMSI/TMSI Mapping—Certain types of wirelesstransmitters will transmit their identity in a familiar form that can bedialed over the telephone network. Other types of wireless transmitterstransmit an identity that cannot be dialed, but which is translated intoa number that can be dialed using a table inside of the wirelesscommunications system. The transmitted identity is permanent in mostcases, but can also be temporary. Users of location applicationsconnected to the AP 14 typically prefer to place triggers onto theTasking List using identities that can be dialed. Identities that can bedialed are typically known as Mobile Directory Numbers (MDN). The othertypes of identities for which translation may be required includesMobile Identity Number (MIN), Mobile Subscriber Identity (MSID),International Mobile Subscriber Identity (IMSI), and Temporary MobileSubscriber Identity (TMSI). If the wireless communications system hasenabled the use of encryption for any of the data fields in the messagestransmitted by wireless transmitters, the Wireless Location System mayalso query for encryption information along with the identityinformation. The Wireless Location System includes means to query thewireless communications system for the alternate identities for atrigger identity that has been placed onto the Tasking List by alocation application, or to query the wireless communications system foralternate identities for an identity that has been demodulated by an SCS10. Other events can also trigger this type of query. For this type ofquery, typically the Wireless Location System initiates the command, andthe wireless communications system responds.

Query/Command Change on Voice RF Channel Assignment—Many wirelesstransmissions on voice channels do not contain identity information.Therefore, when the Wireless Location System is triggered to performlocation processing on a voice channel transmission, the WirelessLocation System queries the wireless communication system to obtain thecurrent voice channel assignment information for the particulartransmitter for which the Wireless Location System has been triggered.For an AMPS transmission, for example, the Wireless Location Systempreferably requires the cell site, sector, and RF channel numbercurrently in use by the wireless transmitter. For a TDMA transmission,for example, the Wireless Location System preferably requires the cellsite, sector, RF channel number, and timeslot currently in use by thewireless transmitter. Other information elements that may be neededincludes long code mask and encryption keys. In general, the WirelessLocation System will initiate the command, and the wirelesscommunications system will respond. However, the Wireless LocationSystem will also accept a trigger command from the wirelesscommunications system that contains the information detailed herein.

The timing on this command/response message set is very critical sincevoice channel handoffs can occur quite frequently in wirelesscommunications systems. That is, the Wireless Location System willlocate any wireless transmitter that is transmitting on a particularchannel—therefore the Wireless Location System and the wirelesscommunications system must jointly be certain that the identity of thewireless transmitter and the voice channel assignment information are inperfect synchronization. The Wireless Location System uses several meansto achieve this objective. The Wireless Location System may, forexample, query the voice channel assignment information for a particularwireless transmitter, receive the necessary RF data, then again querythe voice channel assignment information for that same wirelesstransmitter, and then verify that the status of the wireless transmitterdid not change during the time in which the RF data was being collectedby the Wireless Location System. Location processing is not required tocomplete before the second query, since it is only important andverifying that at least the correct RF data was received. The WirelessLocation System may also, for example, as part of the first querycommand the wireless communications system to prevent a handoff fromoccurring for the particular wireless transmitter during the time periodin which the Wireless Location System is receiving the RF data. Then,subsequent to collecting the RF data, the Wireless Location System willagain query the voice channel assignment information for that samewireless transmitter, command the wireless communications system toagain permit handoffs for said wireless transmitter and then verify thatthe status of the wireless transmitter did not change during the time inwhich the RF data was being collected by the Wireless Location System.

For various reasons, either the Wireless Location System or the wirelesscommunications system may prefer that the wireless transmitter beassigned to another voice RF channel prior to performing locationprocessing. Therefore, as part of the command/response sequence, thewireless communications system may instruct the Wireless Location Systemto temporarily suspend location processing until the wirelesscommunications system has completed a handoff sequence with the wirelesstransmitter, and the wireless communications system has notified theWireless Location System that RF data can be received, and the voice RFchannel upon which the data can be received. Alternately, the WirelessLocation System may determine that the particular voice RF channel whicha particular wireless transmitter is currently using is unsuitable forobtaining an acceptable location estimate, and request that the wirelesscommunications system command the wireless transmitter to handoff.Alternately, the Wireless Location System may request that the wirelesscommunications system command the wireless transmitter to handoff to aseries of voice RF channels in sequence in order to perform a series oflocation estimates, whereby the Wireless Location System can improveupon the accuracy of the location estimate through the series ofhandoffs; this method is further described later.

The Wireless Location System can also use this command/response messageset to query the wireless communications system about the identity of awireless transmitter that had been using a particular voice channel (andtimeslot, etc.) at a particular cell site at a particular time. Thisenables the Wireless Location System to first perform locationprocessing on transmissions without knowing the identities, and then tolater determine the identity of the wireless transmitters making thetransmissions and append this information to the location record. Thisparticular inventive feature enables the use of automatic sequentiallocation of voice channel transmissions.

Receive Triggers—The Wireless Location System can receive triggers fromthe wireless communications system to perform location processing on avoice channel transmission without knowing the identity of the wirelesstransmitter. This message set bypasses the Tasking List, and does notuse the triggering mechanisms within the Wireless Location System.Rather, the wireless communications system alone determines whichwireless transmissions to locate, and then send a command to theWireless Location System to collect RF data from a particular voicechannel at a particular cell site and to perform location processing.The Wireless Location System responds with a confirmation containing atimestamp when the RF data was collected. The Wireless Location Systemalso responds with an appropriate format location record when locationprocessing has completed. Based upon the time of the command to WirelessLocation System and the response with the RF data collection timestamp,the wireless communications system determines whether the wirelesstransmitter status changed subsequent to the command and whether thereis a good probability of successful RF data collection.

Make Transmit—The Wireless Location System can command the wirelesscommunications system to force a particular wireless transmitter to makea transmission at a particular time, or within a prescribed range oftimes. The wireless communications system responds with a confirmationand a time or time range in which to expect the transmission. The typesof transmissions that the Wireless Location System can force include,for example, audit responses and page responses. Using this message set,the Wireless Location System can also command the wirelesscommunications system to force the wireless transmitter to transmitusing a higher power level setting. In many cases, wireless transmitterswill attempt to use the lowest power level settings when transmitting inorder to conserve battery life. In order improve the accuracy of thelocation estimate, the Wireless Location System may prefer that thewireless transmitter use a higher power level setting. The wirelesscommunications system will respond to the Wireless Location System witha confirmation that the higher power level setting will be used and atime or time range in which to expect the transmission.

Delay Wireless Communications System Response to Mobile Access—Some airinterface protocols, such as CDMA, use a mechanism in which the wirelesstransmitter initiates transmissions on a channel, such as an AccessChannel, for example, at the lowest or a very low power level setting,and then enters a sequence of steps in which (i) the wirelesstransmitter makes an access transmission; (ii) the wireless transmitterwaits for a response from the wireless communications system; (iii) ifno response is received by the wireless transmitter from the wirelesscommunications system within a predetermined time, the wirelesstransmitter increases its power level setting by a predetermined amount,and then returns to step (i); (iv) if a response is received by thewireless transmitter from the wireless communications system within apredetermined time, the wireless transmitter then enters a normalmessage exchange. This mechanism is useful to ensure that the wirelesstransmitter uses only the lowest useful power level setting fortransmitting and does not further waste energy or battery life. It ispossible, however, that the lowest power level setting at which thewireless transmitter can successfully communicate with the wirelesscommunications system is not sufficient to obtain an acceptable locationestimate. Therefore, the Wireless Location System can command thewireless communications system to delay its response to thesetransmissions by a predetermined time or amount. This delaying actionwill cause the wireless transmitter to repeat the sequence of steps (i)through (iii) one or more times than normal with the result that one ormore of the access transmissions will be at a higher power level thannormal. The higher power level may preferably enable the WirelessLocation System to determine a more accurate location estimate. TheWireless Location System may command this type of delaying action foreither a particular wireless transmitter, for a particular type ofwireless transmission (for example, for all ‘911’ calls), for wirelesstransmitters that are at a specified range from the base station towhich the transmitter is attempting to communicate, or for all wirelesstransmitters in a particular area.

Send Confirmation to Wireless Transmitter—The Wireless Location Systemdoes not include means within to notify the wireless transmitter of anaction because the Wireless Location System cannot transmit; asdescribed earlier the Wireless Location System can only receivetransmissions. Therefore, if the Wireless Location System desires tosend, for example, a confirmation tone upon the completion of a certainaction, the Wireless Location System commands the wirelesscommunications system to transmit a particular message. The message mayinclude, for example, an audible confirmation tone, spoken message, orsynthesized message to the wireless transmitter, or a text message sentvia a short messaging service or a page. The Wireless Location Systemreceives confirmation from the wireless communications system that themessage has been accepted and sent to the wireless transmitter. Thiscommand/response message set is important in enabling the WirelessLocation System to support certain end-user application functions suchas Prohibit Location Processing.

Report Location Records—The Wireless Location System automaticallyreports location records to the wireless communications system for thosewireless transmitters tasked to report to the wireless communicationssystem, as well as for those transmissions that the wirelesscommunications system initiated triggers. The Wireless Location Systemalso reports on any historical location record queried by the wirelesscommunications system and which the wireless communications system isauthorized to receive.

Monitor Internal Wireless Communications System Interfaces, State Table

In addition to this above interface between the Wireless Location Systemand the wireless communications system, the Wireless Location Systemalso includes means to monitor existing interfaces within the wirelesscommunications system for the purpose of intercepting messages importantto the Wireless Location System for identifying wireless transmittersand the RF channels in use by these transmitters. These interfaces mayinclude, for example, the “a-interface” and “a-bis interface” used inwireless communications systems employing the GSM air interfaceprotocol. These interfaces are well-known and published in variousstandards. By monitoring the bidirectional messages on these interfacesbetween base stations (BTS), base station controllers (BSC), and mobileswitching centers (MSC), and other points, the Wireless Location Systemcan obtain the same information about the assignment of wirelesstransmitters to specific channels as the wireless communications systemitself knows. The Wireless Location System includes means to monitorthese interfaces at various points. For example, the SCS 10 may monitora BTS to BSC interface. Alternately, a TLP 12 or AP 14 may also monitora BSC where a number of BTS to BSC interfaces have been concentrated.The interfaces internal to the wireless communications system are notencrypted and the layered protocols are known to those familiar with theart. The advantage to the Wireless Location System to monitoring theseinterfaces is that the Wireless Location System may not be required toindependently detect and demodulate control channel messages fromwireless transmitters. In addition, the Wireless Location System mayobtain all necessary voice channel assignment information from theseinterfaces.

Using these means for a control channel transmission, the SCS 10receives the transmissions as described earlier and records the controlchannel RF data into memory without performing detection anddemodulation. Separately, the Wireless Location System monitors themessages occurring over prescribed interfaces within the wirelesscommunications system, and causes a trigger in the Wireless LocationSystem when the Wireless Location System discovers a message containinga trigger event. Initiated by the trigger event, the Wireless LocationSystem determines the approximately time at which the wirelesstransmission occurred, and commands a first SCS 10 and a second SCS 10Bto each search its memory for the start of transmission. This first SCS10A chosen is an SCS that is either collocated with the base station towhich the wireless transmitter had communicated, or an SCS which isadjacent to the base station to which the wireless transmitter hadcommunicated. That is, the first SCS 10A is an SCS which would have beenassigned the control channel as a primary channel. If the first SCS 10Asuccessfully determines and reports the start of the transmission, thenlocation processing proceeds normally, using the means described below.If the first SCS 10A cannot successfully determine the start oftransmission, then the second SCS 10B reports the start of transmission,and then location processing proceeds normally.

The Wireless Location System also uses these means for voice channeltransmissions. For all triggers contained in the Tasking List, theWireless Location System monitors the prescribed interfaces for messagespertaining to those triggers. The messages of interest include, forexample, voice channel assignment messages, handoff messages, frequencyhopping messages, power up/power down messages, directed re-trymessages, termination messages, and other similar action and statusmessages. The Wireless Location System continuously maintains a copy ofthe state and status of these wireless transmitters in a State Table inthe AP 14. Each time that the Wireless Location System detects a messagepertaining to one of the entries in the Tasking List, the WirelessLocation System updates its own State Table. Thereafter, the WirelessLocation System may trigger to perform location processing, such as on aregular time interval, and access the State Table to determine preciselywhich cell site, sector, RF channel, and timeslot is presently beingused by the wireless transmitter. The example contained herein describedthe means by which the Wireless Location System interfaces to a GSMbased wireless communications system. The Wireless Location System alsosupports similar functions with systems based upon other air interfaces.

For certain air interfaces, such as CDMA, the Wireless Location Systemalso keeps certain identity information obtained from Access bursts inthe control channel in the State Table; this information is later usedfor decoding the masks used for voice channels. For example, the CDMAair interface protocol uses the Electronic Serial Number (ESN) of awireless transmitter to, in part, determine the long code mask used inthe coding of voice channel transmissions. The Wireless Location Systemmaintains this information in the State Table for entries in the TaskingList because many wireless transmitters may transmit the informationonly once; for example, many CDMA mobiles will only transmit their ESNduring the first Access burst after the wireless transmitter becomeactive in a geographic area. This ability to independently determine thelong code mask is very useful in cases where an interface between theWireless Location System and the wireless communications system is notoperative and/or the Wireless Location System is not able to monitor oneof the interfaces internal to the wireless communications system. Theoperator of the Wireless Location System may optionally set the WirelessLocation System to maintain the identity information for all wirelesstransmitters. In addition to the above reasons, the Wireless LocationSystem can provide the voice channel tracking for all wirelesstransmitters that trigger location processing by calling “911”. Asdescribed earlier, the Wireless Location System uses dynamic tasking toprovide location to a wireless transmitter for a prescribed time afterdialing “911”, for example. By maintaining the identity information forall wireless transmitters in the State Table, the Wireless LocationSystem is able to provide voice channel tracking for all transmitters inthe event of a prescribed trigger event, and not just those with priorentries in the Tasking List.

Applications Interface

Using the AP 14, the Wireless Location System supports a variety ofstandards based interfaces to end-user and carrier location applicationsusing secure protocols such as TCP/IP, X.25, SS-7, and IS-41. Eachinterface between the AP 14 and an external application is a secure andauthenticated connection that permits the AP 14 to positively verify theidentity of the application that is connected to the AP 14. This isnecessary because each connected application is granted only limitedaccess to location records on a real-time and/or historical basis. Inaddition, the AP 14 supports additional command/response, real-time, andpost-processing functions that are further detailed below. Access tothese additional functions also requires authentication. The AP 14maintains a user list and the authentication means associated with eachuser. No application can gain access to location records or functionsfor which the application does not have proper authentication or accessrights. In addition, the AP 14 supports full logging of all actionstaken by each application in the event that problems arise or a laterinvestigation into actions is required. For each command or function inthe list below, the AP 14 preferably supports a protocol in which eachaction or the result of each is confirmed, as appropriate.

Edit Tasking List—This command permits external applications to add,remove, or edit entries in the Tasking List, including any fields andflags associated with each entry. This command can be supported on asingle entry basis, or a batch entry basis where a list of entries isincluded in a single command. The latter is useful, for example, in abulk application such as location sensitive billing whereby largervolumes of wireless transmitters are being supported by the externalapplication, and it is desired to minimize protocol overhead. Thiscommand can add or delete applications for a particular entry in theTasking List, however, this command cannot delete an entry entirely ifthe entry also contains other applications not associated with orauthorized by the application issuing the command.

Set Location Interval—The Wireless Location System can be set to performlocation processing at any interval for a particular wirelesstransmitter, on either control or voice channels. For example, certainapplications may require the location of a wireless transmitter everyfew seconds when the transmitter is engaged on a voice channel. When thewireless transmitter make an initial transmission, the Wireless LocationSystem initially triggers using a standard entry in the Tasking List. Ifone of the fields or flags in this entry specifies updated location on aset interval, then the Wireless Location System creates a dynamic taskin the Tasking List that is triggered by a timer instead of an identityor other transmitted criteria. Each time the timer expires, which canrange from 1 second to several hours, the Wireless Location System willautomatically trigger to locate the wireless transmitter. The WirelessLocation System uses its interface to the wireless communications systemto query status of the wireless transmitter, including voice callparameters as described earlier. If the wireless transmitter is engagedon a voice channel, then the Wireless Location System performs locationprocessing. If the wireless transmitter is not engaged in any existingtransmissions, the Wireless Location System will command the wirelesscommunications system to make the wireless transmitter immediatelytransmit. When the dynamic task is set, the Wireless Location Systemalso sets an expiration time at which the dynamic task ceases.

End-User Addition/Deletion—This command can be executed by an end-userof a wireless transmitter to place the identity of the wirelesstransmitter onto the Tasking List with location processing enabled, toremove the identity of the wireless transmitter from the Tasking Listand therefore eliminate identity as a trigger, or to place the identityof the wireless transmitter onto the Tasking List with locationprocessing disabled. When location processing has been disabled by theend-user, known as Prohibit Location Processing then no locationprocessing will be performed for the wireless transmitter. The operatorof the Wireless Location System can optionally select one of severalactions by the Wireless Location System in response to a ProhibitLocation Processing command by the end user: (i) the disabling actioncan override all other triggers in the Tasking List, including a triggerdue to an emergency call such as “911”, (ii) the disabling action canoverride any other trigger in the Tasking List, except a trigger due toan emergency call such as “911”, (iii) the disabling action can beoverridden by other select triggers in the Tasking List. In the firstcase, the end-user is granted complete control over the privacy of thetransmissions by the wireless transmitter, as no location processingwill be performed on that transmitter for any reason. In the secondcase, the end-user may still receive the benefits of location during anemergency, but at no other times. In an example of the third case, anemployer who is the real owner of a particular wireless transmitter canoverride an end-user action by an employee who is using the wirelesstransmitter as part of the job but who may not desire to be located. TheWireless Location System may query the wireless communications system,as described above, to obtain the mapping of the identity contained inthe wireless transmission to other identities.

The additions and deletions by the end-user are effected by dialedsequences of characters and digits and pressing the “SEND” or equivalentbutton on the wireless transmitter. These sequences may be optionallychosen and made known by the operator of the Wireless Location System.For example, one sequence may be “*55SEND” to disable locationprocessing. Other sequences are also possible. When the end-user candialed this prescribed sequence, the wireless transmitter will transmitthe sequence over one of the prescribed control channels of the wirelesscommunications system. Since the Wireless Location System independentlydetects and demodulates all reverse control channel transmissions, theWireless Location System can independently interpret the prescribeddialed sequence and make the appropriate feature updates to the TaskingList, as described above. When the Wireless Location System hascompleted the update to the Tasking List, the Wireless Location Systemcommands the wireless communications system to send a confirmation tothe end-user. As described earlier, this may take the form of an audibletone, recorded or synthesized voice, or a text message. This command isexecuted over the interface between the Wireless Location System and thewireless communications system.

Command Transmit—This command allows external applications to cause theWireless Location System to send a command to the wirelesscommunications system to make a particular wireless transmitter, orgroup of wireless transmitters, transmit. This command may contain aflag or field that the wireless transmitter(s) should transmitimmediately or at a prescribed time. This command has the effort oflocating the wireless transmitter(s) upon command, since thetransmissions will be detected, demodulated, and triggered, causinglocation processing and the generation of a location record. This isuseful in eliminating or reducing any delay in determining location suchas waiting for the next registration time period for the wirelesstransmitter or waiting for an independent transmission to occur.

External Database Query and Update—The Wireless Location System includesmeans to access an external database, to query the said externaldatabase using the identity of the wireless transmitter or otherparameters contained in the transmission or the trigger criteria, and tomerge the data obtained from the external database with the datagenerated by the Wireless Location System to create a new enhancedlocation record. The enhanced location record may then be forwarded torequesting applications. The external database may contain, for example,data elements such as customer information, medical information,subscribed features, application related information, customer accountinformation, contact information, or sets of prescribed actions to takeupon a location trigger event. The Wireless Location System may alsocause updates to the external database, for example, to increment ordecrement a billing counter associated with the provision of locationservices, or to update the external database with the latest locationrecord associated with the particular wireless transmitter. The WirelessLocation System contains means to performed the actions described hereinon more than one external database. The list and sequence of externaldatabases to access and the subsequent actions to take are contained inone of the fields contained in the trigger criteria in the Tasking List.

Random Anonymous Location Processing—The Wireless Location Systemincludes means to perform large scale random anonymous locationprocessing. This function is valuable to certain types of applicationsthat require the gathering of a large volume of data about a populationof wireless transmitters without consideration to the specificidentities of the individual transmitters. Applications of this typeinclude: RF Optimization, which enables wireless carriers to measure theperformance of the wireless communications system by simultaneouslydetermining location and other parameters of a transmission; TrafficManagement, which enables government agencies and commercial concerns tomonitor the flow of traffic on various highways using statisticallysignificant samples of wireless transmitters travelling in vehicles; andLocal Traffic Estimation, which enables commercial enterprises toestimate the flow of traffic around a particular area which may helpdetermine the viability of particular businesses.

Applications requesting random anonymous location processing optionallyreceive location records from two sources: (i) a copy of locationrecords generated for other applications, and (ii) location recordswhich have been triggered randomly by the Wireless Location Systemwithout regard to any specific criteria. All of the location recordsgenerated from either source are forwarded with all of the identity andtrigger criteria information removed from the location records; however,the requesting application(s) can determine whether the record wasgenerated from the fully random process or is a copy from anothertrigger criteria. The random location records are generated by a lowpriority task within the Wireless Location System that performs locationprocessing on randomly selected transmissions whenever processing andcommunications resources are available and would otherwise be unused ata particular instant in time. The requesting application(s) can specifywhether the random location processing is performed over the entirecoverage area of a Wireless Location System, over specific geographicareas such as along prescribed highways, or by the coverage areas ofspecific cell sites. Thus, the requesting application(s) can direct theresources of the Wireless Location System to those area of greatestinterest to each application. Depending on the randomness desired by theapplication(s), the Wireless Location System can adjust preferences forrandomly selecting certain types of transmissions, for example,registration messages, origination messages, page response messages, orvoice channel transmissions.

Anonymous Tracking of a Geographic Group—The Wireless Location Systemincludes means to trigger location processing on a repetitive basis foranonymous groups of wireless transmitters within a prescribed geographicarea. For example, a particular location application may desire tomonitor the travel route of a wireless transmitter over a prescribedperiod of time, but without the Wireless Location System disclosing theparticular identity of the wireless transmitter. The period of time maybe many hours, days, or weeks. Using the means, the Wireless LocationSystem: randomly selects a wireless transmitter that initiates atransmission in the geographic area of interest to the application;performs location processing on the transmission of interest;irreversibly translates and encrypts the identity of the wirelesstransmitter into a new coded identifier; creates a location record usingonly the new coded identifier as an identifying means; forwards thelocation record to the requesting location application(s); and creates adynamic task in the Tasking List for the wireless transmitter, where thedynamic task has an associated expiration time. Subsequently, wheneverthe prescribed wireless transmitter initiates trans mission, theWireless Location System shall trigger using the dynamic task, performlocation processing on the transmission of interest, irreversiblytranslate and encrypt the identity of the wireless transmitter into thenew coded identifier using the same means as prior such that the codedidentifier is the same, create a location record using the codedidentifier, and forward the location record to the requesting locationapplication(s). The means described herein can be combined with otherfunctions of the Wireless Location System to perform this type ofmonitoring use either control or voice channel transmissions. Further,the means described herein completely preserve the private identity ofthe wireless transmitter, yet enables another class of applications thatcan monitor the travel patterns of wireless transmitters. This class ofapplications can be of great value in determining the planning anddesign of new roads, alternate route planning, or the construction ofcommercial and retail space.

Location Record Grouping, Sorting, and Labeling—The Wireless LocationSystem include means to post-process the location records for certainrequesting applications to group, sort, or label the location records.For each interface supported by the Wireless Location System, theWireless Location System stores a profile of the types of data for whichthe application is both authorized and requesting, and the types offilters or post-processing actions desired by the application. Manyapplications, such as the examples contained herein, do not requireindividual location records or the specific identities of individualtransmitters. For example, an RF optimization application derives morevalue from a large data set of location records for a particular cellsite or channel than it can from any individual location record. Foranother example, a traffic monitoring application requires only locationrecords from transmitters that are on prescribed roads or highways, andadditionally requires that these records be grouped by section of roador highway and by direction of travel. Other applications may requestthat the Wireless Location System forward location records that havebeen formatted to enhance visual display appeal by, for example,adjusting the location estimate of the transmitter so that thetransmitter's location appears on an electronic map directly on a drawnroad segment rather than adjacent to the road segment. Therefore, theWireless Location System preferably “snaps” the location estimate to thenearest drawn road segment.

The Wireless Location System can filter and report location records toan application for wireless transmitters communicating only on aparticular cell site, sector, RF channel, or group of RF channels.Before forwarding the record to the requesting application, the WirelessLocation System first verifies that the appropriate fields in the recordsatisfy the requirements. Records not matching the requirements are notforwarded, and records matching the requirements are forwarded. Somefilters are geographic and must be calculated by the Wireless LocationSystem. For example, the Wireless Location System can process a locationrecord to determine the closest road segment and direction of travel ofthe wireless transmitter on the road segment. The Wireless LocationSystem can then forward only records to the application that aredetermined to be on a particular road segment, and can further enhancethe location record by adding a field containing the determined roadsegment. In order to determine the closest road segment, the WirelessLocation System is provided with a database of road segments of interestby the requesting application. This database is stored in a table whereeach road segment is stored with a latitude and longitude coordinatedefining the end point of each segment. Each road segment can be modeledas a straight or curved line, and can be modeled to support one or twodirections of travel. Then for each location record determined by theWireless Location System, the Wireless Location System compares thelatitude and longitude in the location record to each road segmentstored in the database, and determines the shortest distance from amodeled line connecting the end points of the segment to the latitudeand longitude of the location record. The shortest distance is acalculated imaginary line orthogonal to the line connecting the two endpoints of the stored road segment. When the closest road segment hasbeen determined, the Wireless Location System can further determine thedirection of travel on the road segment by comparing the direction oftravel of the wireless transmitter reported by the location processingto the orientation of the road segment. The direction that produces thesmallest error with respect to the orientation of the road segments isthen reported by the Wireless Location System.

Network Operations Console (NOC) 16

The NOC 16 is a network management system that permits operators of theWireless Location System easy access to the programming parameters ofthe Wireless Location System. For example, in some cities, the WirelessLocation System may contain many hundreds or even thousands of SCS's 10.The NOC is the most effective way to manage a large Wireless LocationSystem, using graphical user interface capabilities. The NOC will alsoreceive real time alerts if certain functions within the WirelessLocation System are not operating properly. These real time alerts canbe used by the operator to take corrective action quickly and prevent adegradation of location service. Experience with trials of the WirelessLocation System show that the ability of the system to maintain goodlocation accuracy over time is directly related to the operator'sability to keep the system operating within its predeterminedparameters.

Location Processing

The Wireless Location System is capable of performing locationprocessing using two different methods known as central based processingand station based processing. Both techniques were first disclosed inU.S. Pat. No. 5,327,144, and are further enhanced in this specification.Location processing depends in part on the ability to accuratelydetermine certain phase characteristics of the signal as received atmultiple antennas and at multiple SCS's 10. Therefore, it is an objectof the Wireless Location System to identify and remove sources of phaseerror that impede the ability of the location processing to determinethe phase characteristics of the received signal. One source of phaseerror is inside of the wireless transmitter itself, namely theoscillator (typically a crystal oscillator) and the phase lock loopsthat allow the phone to tune to specific channels for transmitting.Lower cost crystal oscillators will generally have higher phase noise.Some air interface specifications, such as IS-136 and IS-95A, havespecifications covering the phase noise with which a wireless telephonecan transmit. Other air interface specifications, such as IS-553A, donot closely specify phase noise. It is therefore an object of thepresent invention to automatically reduce and/or eliminate a wirelesstransmitter's phase noise as a source of phase error in locationprocessing, in part by automatically selecting the use of central basedprocessing or station based processing. The automatic selection willalso consider the efficiency with which the communications link betweenthe SCS 10 and the TLP 12 is used, and the availability of DSP resourcesat each of the SCS 10 and TLP 12.

When using central based processing, the TDOA and FDOA determination andthe multipath processing are performed in the TLP 12 along with theposition and speed determination. This method is preferred when thewireless transmitter has a phase noise that is above a predeterminedthreshold. In these cases, central based processing is most effective inreducing or eliminating the phase noise of the wireless transmitter as asource of phase error because the TDOA estimate is performed using adigital representation of the actual RF transmission from two antennas,which may be at the same SCS 10 or different SCS's 10. In this method,those skilled in the art will recognize that the phase noise of thetransmitter is a common mode noise in the TDOA processing, and thereforeis self-canceling in the TDOA determination process. This method worksbest, for example, with many very low cost AMPS cellular telephones thathave a high phase noise. The basic steps in central based processinginclude the steps recited below and represented in the flowchart of FIG.6:

a wireless transmitter initiates a transmission on either a controlchannel or a voice channel (step S50);

the transmission is received at multiple antennas and at multiple SCS's10 in the Wireless Location System (step S51);

the transmission is converted into a digital format in the receiverconnected to each SCS/antenna (step S52);

the digital data is stored in a memory in the receivers in each SCS 10(step S53); the transmission is demodulated (step S54);

the Wireless Location System determines whether to begin locationprocessing for the transmission (step S55);

if triggered, the TLP 12 requests copies of the digital data from thememory in receivers at multiple SCS's 10 (step S56);

digital data is sent from multiple SCS's 10 to a selected TLP 12 (stepS57);

the TLP 12 performs TDOA, FDOA, and multipath mitigation on the digitaldata from pairs of antennas (step S58);

the TLP 12 performs position and speed determination using the TDOAdata, and then creates a location record and forwards the locationrecord to the AP 14 (step S59).

The Wireless Location System uses a variable number of bits to representthe transmission when sending digital data from the SCS's 10 to the TLP12. As discussed earlier, the SCS receiver digitizes wirelesstransmissions with a high resolution, or a high number of bits perdigital sample in order to achieve a sufficient dynamic range. This isespecially required when using wideband digital receivers, which may besimultaneously receiving signals near to the SCS 10A and far from theSCS 10B. For example, up to 14 bits may be required to represent adynamic range of 84 dB. Location processing does not always require thehigh resolution per digital sample, however. Frequently, locations ofsufficient accuracy are achievable by the Wireless Location System usinga fewer number of bits per digital sample. Therefore, to minimize theimplementation cost of the Wireless Location System by conservingbandwidth on the communication links between each SCS 10 and TLP 12, theWireless Location System determines the fewest number of bits requiredto digitally represent a transmission while still maintaining a desiredaccuracy level. This determination is based, for example, on theparticular air interface protocol used by the wireless transmitter, theSNR of the transmission, the degree to which the transmission has beenperturbed by fading and/or multipath, and the current state of theprocessing and communication queues in each SCS 10. The number of bitssent from the SCS 10 to the TLP 12 are reduced in two ways: the numberof bits per sample is minimized, and the shortest length, or fewestsegments, of the transmission possible is used for location processing.The TLP 12 can use this minimal RF data to perform location processingand then compare the result with the desired accuracy level. Thiscomparison is performed on the basis of a confidence intervalcalculation. If the location estimate does not fall within the desiredaccuracy limits, the TLP 12 will recursively request additional datafrom selected SCS's 10. The additional data may include an additionalnumber of bits per digital sample and/or may include more segments ofthe transmission. This process of requesting additional data maycontinue recursively until the TLP 12 has achieved the prescribedlocation accuracy.

There are additional details to the basic steps described above. Thesedetails are described in prior U.S. Pat. Nos. 5,327,144 and 5,608,410 inother parts of this specification. One enhancement to the processesdescribed in earlier patents is the selection of a single referenceSCS/antenna that is used for each baseline in the location processing.In prior art, baselines were determined using pairs of antenna sitesaround a ring. In the present Wireless Location System, the singlereference SCS/antenna used is generally the highest SNR signal, althoughother criteria are also used as described below. The use of a high SNRreference aids central based location processing when the otherSCS/antennas used in the location processing are very weak, such as ator below the noise floor (i.e. zero or negative signal to noise ratio).When station based location processing is used, the reference signal isa re-modulated signal, which is intentionally created to have a veryhigh signal to noise ratio, further aiding location processing for veryweak signals at other SCS/antennas. The actual selection of thereference SCS/antenna is described below.

The Wireless Location System mitigates multipath by first recursivelyestimating the components of multipath received in addition to thedirect path component and then subtracting these components from thereceived signal. Thus the Wireless Location System models the receivedsignal and compares the model to the actual received signal and attemptsto minimize the difference between the two using a weighted least squaredifference. For each transmitted signal x(t) from a wirelesstransmitter, the received signal y(t) at each SCS/antenna is a complexcombination of signals:

y(t)=Σ×(t−τ _(n))a _(n) e ^(jω(t−τn)), for all n=0 to N;

where x(t) is the signal as transmitted by the wireless transmitter;a_(n) and τ_(n) are the complex amplitude and delays of the multipathcomponents; N is the total number of multipath components in thereceived signal; and a₀ and τ₀ are constants for the most direct pathcomponent.

The operator of the Wireless Location System empirically determines aset of constraints for each component of multipath that applies to thespecific environment in which each Wireless Location System isoperating. The purpose of the constraints is to limit the amount ofprocessing time that the Wireless Location System spends optimizing theresults for each multipath mitigation calculation. For example, theWireless Location System may be set to determine only four components ofmultipath: the first component may be assumed to have a time delay inthe range τ_(1A) to τ_(1B); the second component may be assumed to havea time delay in the range τ_(2A) to τ_(2B); the third component may beassumed to have a time delay in the range τ_(3A) to τ_(3B); and similarfor the fourth component; however the fourth component is a single valuethat effectively represents a complex combination of many tens ofindividual (and somewhat diffuse) multipath components whose time delaysexceed the range of the third component. For ease of processing, theWireless Location System transforms the prior equation into thefrequency domain, and then solves for the individual components suchthat a weighted least squares difference is minimized.

When using station based processing, the TDOA and FDOA determination andmultipath mitigation are performed in the SCS's 10, while the positionand speed determination are typically performed in the TLP 12. The mainadvantage of station based processing, as described in U.S. Pat. No.5,327,144, is reducing the amount of data that is sent on thecommunication link between each SCS 10 and TLP 12. However, there may beother advantages as well. One new objective of the present invention isincreasing the effective signal processing gain during the TDOAprocessing. As pointed out earlier, central based processing has theadvantage of eliminating or reducing phase error caused by the phasenoise in the wireless transmitter. However, no previous disclosure hasaddressed how to eliminate or reduce the same phase noise error whenusing station based processing. The present invention reduces the phaseerror and increases the effective signal processing gain using the stepsrecited below and shown in FIG. 6:

a wireless transmitter initiates a transmission on either a controlchannel or a voice channel (step S60);

the transmission is received at multiple antennas and at multiple SCS's10 in the Wireless Location System (step S61);

the transmission is converted into a digital format in the receiverconnected to each antenna (step S62);

the digital data is stored in a memory in the SCS 10 (step S63);

the transmission is demodulated (step S64);

the Wireless Location System determines whether to begin locationprocessing for the transmission (step S65);

if triggered, a first SCS 10A demodulates the transmission anddetermines an appropriate phase correction interval (step S66);

for each such phase correction interval, the first SCS 10A calculates anappropriate phase correction and amplitude correction, and encodes thisphase correction parameter and amplitude correction parameter along withthe demodulated data (step S67);

the demodulated data and phase correction and amplitude correctionparameters are sent from the first SCS 10A to a TLP 12 (step S68);

the TLP 12 determines the SCS's 10 and receiving antennas to use in thelocation processing (step S69);

the TLP 12 sends the demodulated data and phase correction and amplitudecorrection parameters to each second SCS 10IB that will be used in thelocation processing (step S70);

the first SCS 10 and each second SCS 10B creates a first re-modulatedsignal based upon the demodulated data and the phase correction andamplitude correction parameters (step S71);

the first SCS 10A and each second SCS 10B performs TDOA, FDOA, andmultipath mitigation using the digital data stored in memory in each SCS10 and the first remodulated signal (step S72);

the TDOA, FDOA, and multipath mitigation data are sent from the firstSCS 10A and each second SCS 10B to the TLP 12 (step S73);

the TLP 12 performs position and speed determination using the TDOA data(step S74); and

the TLP 12 creates a location record, and forwards the location recordto the AP 14 (step S75).

The advantages of determining phase correction and amplitude correctionparameters are most obvious in the location of CDMA wirelesstransmitters based upon IS-95A. As is well known, the reversetransmissions from an IS-95A transmitter are sent using non-coherentmodulation. Most CDMA base stations only integrate over a single bitinterval because of the non-coherent modulation. For a CDMA AccessChannel, with a bit rate of 4800 bits per second, there are 256 chipssent per bit, which permits an integration gain of 24 dB. Using thetechnique described above, the TDOA processing in each SCS 10 mayintegrate, for example, over a full 160 millisecond burst (196,608chips) to produce an integration gain of 53 dB. This additionalprocessing gain enables the present invention to detect and locate CDMAtransmissions using multiple SCS's 10, even if the base stationscollocated with the SCS's 10 cannot detect the same CDMA transmission.

For a particular transmission, if either the phase correction parametersor the amplitude correction parameters are calculated to be zero, or arenot needed, then these parameters are not sent in order to conserve onthe number of bits transmitted on the communications link between eachSCS 10 and TLP 12. In another embodiment of the invention, the WirelessLocation System may use a fixed phase correction interval for aparticular transmission or for all transmissions of a particular airinterface protocol, or for all transmissions made by a particular typeof wireless transmitter. This may, for example, be based upon empiricaldata gathered over some period of time by the Wireless Location Systemshowing a reasonable consistency in the phase noise exhibited by variousclasses of transmitters. In these cases, the SCS 10 may save theprocessing step of determining the appropriate phase correctioninterval.

Those skilled in the art will recognize that there are many ways ofmeasuring the phase noise of a wireless transmitter. In one embodiment,a pure, noiseless re-modulated copy of the signal received at the firstSCS 10A may be digitally generated by DSP's in the SCS, then thereceived signal may be compared against the pure signal over each phasecorrection interval and the phase difference may be measured directly.In this embodiment, the phase correction parameter will be calculated asthe negative of the phase difference over that phase correctioninterval. The number of bits required to represent the phase correctionparameter will vary with the magnitude of the phase correctionparameter, and the number of bits may vary for each phase correctioninterval. It has been observed that some transmissions, for example,exhibit greater phase noise early in the transmission, and less phasenoise in the middle of and later in the transmission.

Station based processing is most useful for wireless transmitters thathave relatively low phase noise. Although not necessarily required bytheir respective air interface standards, wireless telephones that usethe TDMA, CDMA, or GSM protocols will typically exhibit lower phasenoise. As the phase noise of a wireless transmitter increases, thelength of a phase correction interval may decrease and/or the number ofbits required to represent the phase correction parameters increases.Station based processing is not effective when the number of bitsrequired to represent the demodulated data plus the phase correction andamplitude parameters exceeds a predetermined proportion of the number ofbits required to perform central based processing. It is therefore anobject of the present invention to automatically determine for eachtransmission for which a location is desired whether to process thelocation using central based processing or station based processing. Thesteps in making this determination are recited below and shown in FIG.7:

a wireless transmitter initiates a transmission on either a controlchannel or a voice channel (step S80);

the transmission is received at a first SCS 10A (step S81);

the transmission is converted into a digital format in the receiverconnected to each antenna (step S82);

the Wireless Location System determines whether to begin locationprocessing for the transmission (step S83);

if triggered, a first SCS 10A demodulates the transmission and estimatesan appropriate phase correction interval and the number of bits requiredto encode the phase correction and amplitude correction parameters (stepS84);

the first SCS 10A then estimates the number of bits required for centralbased processing;

based upon the number of bits required for each respective method, theSCS 10 or the TLP 12 determine whether to use central based processingor station based processing to perform the location processing for thistransmission (step S85).

In another embodiment of the invention, the Wireless Location System mayalways use central based processing or station based processing for alltransmissions of a particular air interface protocol, or for alltransmissions made by a particular kind of wireless transmitter. Thismay, for example, be based upon empirical data gathered over some periodof time by the Wireless Location System showing a reasonable consistencyin the phase noise exhibited by various classes of transmitters. Inthese cases, the SCS 10 and/or the TLP 12 may be saved the processingstep of determining the appropriate processing method.

A further enhancement of the present invention, used for both centralbased processing and station based processing, is the use of thresholdcriteria for including baselines in the fmal determination of locationand velocity of the wireless transmitter. For each baseline, theWireless Location System calculates a number of parameters that include:the SCS/antenna port used with the reference SCS/antenna in calculatingthe baseline, the peak, average, and variance in the power of thetransmission as received at the SCS/antenna port used in the baselineand over the interval used for location processing, the correlationvalue from the cross-spectra correlation between the SCS/antenna used inthe baseline and the reference SCS/antenna, the delay value for thebaseline, the multipath mitigation parameters, the residual valuesremaining after the multipath mitigation calculations, the contributionof the SCS/antenna to the weighted GDOP in the final location solution,and a measure of the quality of fit of the baseline if included in thefinal location solution. Each baseline is included in the final locationsolution is each meets or exceeds the threshold criteria for each of theparameters described herein. A baseline may be excluded from thelocation solution if it fails to meet one or more of the thresholdcriteria. Therefore, it is frequently possible that the number ofSCS/antennas actually used in the final location solution is less thanthe total number considered.

Previous U.S. Pat. Nos. 5,327,144 and 5,608,410 disclosed a method bywhich the location processing minimized the least square difference(LSD) value of the following equation:

LSD=[Q ₁₂(Delay₁₃ T ₁₂−Delay_(—) O ₁₂)² +Q ₁₃(Delay_(—) T ₁₃−Delay_(—) O₁₃)² + . . . +Q _(xy)(Delay_(—) T _(xy)−Delay_(—) O _(xy))²

In the present implementation, this equation has been rearranged to thefollowing form in order to make the location processing code moreefficient:

LSD=Σ(TDOA _(0i)−τ_(i)+τ₀)² w _(i) ²; over all i=1 to N−1

where N=number of SCS/antennas used in the location processing;

TDOA_(0i)=the TDOA to the i^(th) site from reference site 0;

τ_(i)=the theoretical line of sight propagation time from the wirelesstransmitter to the i^(th) site;

τ₀=the theoretical line of sight propagation time from the transmitterto the reference; and

w_(i)=the weight, or quality factor, applied to the i^(th) baseline.

In the present implementation, the Wireless Location System also usesanother alternate form of the equation that can aid in determininglocation solutions when the reference signal is not very strong or whenit is likely that a bias would exist in the location solution using theprior form of the equation:

LSD′=Σ(TDOA _(0i)−τ_(i))² w _(i) ² −b ² Σw _(i) ²; over all i=0 to N−1

where N=number of SCS/antennas used in the location processing;

TDOA_(0i)=the TDOA to the i^(th) site from reference site 0;

TDOA₀₀=is assumed to be zero;

τ_(i)=the theoretical line of sight propagation time from the wirelesstransmitter to the i^(th) site;

b=a bias that is separately calculated for each theoretical point thatminimizes LSD′ at that theoretical point; and

w_(i)=the weight, or quality factor, applied to the i^(th) baseline.

The LSD′ form of the equation offers an easier means of removing a biasin location solutions at the reference site by making w₀ equal to themaximum value of the other weights or basing w₀ on the relative signalstrength at the reference site. Note that if w₀ is much larger than theother weights, then b is approximately equal to τ₀. In general, theweights, or quality factors are based on similar criteria to thatdiscussed above for the threshold criteria in including baselines. Thatis, the results of the criteria calculations are used for weights andwhen the criteria falls below threshold the weight is then set to zeroand is effectively not included in the determination of the finallocation solution.

Antenna Selection Process for Location Processing

Previous inventions and disclosures, such as those listed above, havedescribed techniques in which a first, second, or possibly third antennasite, cell site, or base station are required to determine location.U.S. Pat. No. 5,608,410 further discloses a Dynamic Selection Subsystem(DSS) that is responsible for determining which data frames from whichantenna site locations will be used to calculate the location of aresponsive transmitter. In the DSS, if data frames are received frommore than a threshold number of sites, the DSS determines which arecandidates for retention or exclusion, and then dynamically organizesdata frames for location processing. The DSS prefers to use more thanthe minimum number of antenna sites so that the solution isover-determined. Additionally, the DSS assures that all transmissionsused in the location processing were received from the same transmitterand from the same transmission.

The preferred embodiments of the prior inventions had severallimitations, however. First, either only one antenna per antenna site(or cell site) is used, or the data from two or four diversity antennaswere first combined at the antenna site (or cell site) prior totransmission to the central site. Additionally, all antenna sites thatreceived the transmission sent data frames to the central site, even ifthe DSS later discarded the data frames. Thus, some communicationsbandwidth may have been wasted sending data that was not used.

The present inventors have determined that while a minimum of two orthree sites are required in order to determine location, the actualselection of antennas and SCS's 10 to use in location processing canhave a significant effect on the results of the location processing. Inaddition, it is advantageous to include the means to use more than oneantenna at each SCS 10 in the location processing. The reason for usingdata from multiple antennas at a cell site independently in the locationprocessing is that the signal received at each antenna is uniquelyaffected by multipath, fading, and other disturbances. It is well knownin the field that when two antennas are separated in distance by morethan one wavelength, then each antenna will receive the signal on anindependent path. Therefore, there is frequently additional and uniqueinformation to be gained about the location of the wireless transmitterby using multiple antennas, and the ability of the Wireless LocationSystem to mitigate multipath is enhanced accordingly.

It is therefore an object of the present invention to provide animproved method for using the signals received from more than oneantenna at an SCS 10 in the location processing. It is a further objectto provide a method to improve the dynamic process used to select thecooperating antennas and SCS's 10 used in the location processing. Thefirst object is achieved by providing means within the SCS 10 to selectand use any segment of data collected from any number of antennas at anSCS in the location processing. As described earlier, each antenna at acell site is connected to a receiver internal to the SCS 10. Eachreceiver converts signals received from the antenna into a digital form,and then stores the digitized signals temporarily in a memory in thereceiver. The TLP 12 has been provided with means to direct any SCS 10to retrieve segments of data from the temporary memory of any receiver,and to provide the data for use in location processing. The secondobject is achieved by providing means within the Wireless LocationSystem to monitor a large number of antennas for reception of thetransmission that the Wireless Location System desires to locate, andthen selecting a smaller set of antennas for use in location processingbased upon a predetermined set of parameters. One example of thisselection process is represented by the flowchart of FIG. 8:

a wireless transmitter initiates a transmission on either a controlchannel or a voice channel (step S90);

the transmission is received at multiple antennas and at multiple SCS's10 in the Wireless Location System (step S91);

the transmission is converted into a digital format in the receiverconnected to each antenna (step S92);

the digital data is stored in a memory in each SCS 10 (step S93);

the transmission is demodulated at least one SCS 10A and the channelnumber on which the transmission occurred and the cell site and sectorserving the wireless transmitter is determined (step S94);

based upon the serving cell site and sector, one SCS 10A is designatedas the ‘primary’ SCS 10 for processing that transmission (step S95);

the primary SCS 10A determines a timestamp associated with thedemodulated data (step S96);

the Wireless Location System determines whether to begin locationprocessing for the transmission (step S97);

if location processing is triggered, the Wireless Location Systemdetermines a candidate list of SCS's 10 and antennas to use in thelocation processing (step S98);

each candidate SCS/antenna measures and reports several parameters inthe channel number of the transmission and at the time of the timestampdetermined by the primary SCS 10A (step S99);

the Wireless Location System orders the candidate SCS/antennas usingspecified criteria and selects a reference SCS/antenna and a processinglist of SCS/antennas to use in the location processing (step S100); and

the Wireless Location System proceeds with location processing asdescribed earlier, using data from the processing list of SCS/antennas(step S101).

Selecting Primary SCS/Antenna

The process for choosing the ‘primary’ SCS/antenna is critical, becausethe candidate list of SCS's 10 and antennas 10-1 is determined in partbased upon the designation of the primary SCS/antenna. When a wirelesstransmitter makes a transmission on a particular RF channel, thetransmission frequently can propagate many miles before the signalattenuates below a level at which it can be demodulated. Therefore,there are frequently many SCS/antennas capable of demodulating thesignal. This especially occurs in urban and suburban areas where thefrequency re-use pattern of many wireless communications systems can bequite dense. For example, because of the high usage rate of wireless andthe dense cell site spacing, the present inventors have tested wirelesscommunications systems in which the same RF control channel and digitalcolor code were used on cell sites spaced about one mile apart. Becausethe Wireless Location System is independently demodulating thesetransmissions, the Wireless Location System frequently can demodulatethe same transmission at two, three, or more separate SCS/antennas. TheWireless Location System detects that the same transmission has beendemodulated multiple times at multiple SCS/antennas when the WirelessLocation System receives multiple demodulated data frames sent fromdifferent SCS/antennas, each with a number of bit errors below apredetermined bit error threshold, and with the demodulated datamatching within an acceptable limit of bit errors, and all occurringwithin a predetermined interval of time.

When the Wireless Location System detects demodulated data from multipleSCS/antennas, it examines the following parameters to determine whichSCS/antenna shall be designated the primary SCS: average SNR over thetransmission interval used for location processing, the variance in theSNR over the same interval, correlation of the beginning of the receivedtransmission against a pure pre-cursor (i.e., for AMPS, the dotting andBarker code), the number of bit errors in the demodulated data, and themagnitude and rate of change of the SNR from just before the on-set ofthe transmission to the on-set of the transmission, as well as othersimilar parameters. The average SNR is typically determined at eachSCS/antenna either over the entire length of the transmission to be usedfor location processing, or over a shorter interval. The average SNRover the shorter interval can be determined by performing a correlationwith the dotting sequence and/or Barker code and/or sync word, dependingon the particular air interface protocol, and over a short range of timebefore, during, and after the timestamp reported by each SCS 10. Thetime range may typically be +/−200 microseconds centered at thetimestamp, for example. The Wireless Location System will generallyorder the SCS/antennas using the following criteria, each of which maybe weighted (multiplied by an appropriate factor) when combining thecriteria to determine the final decision: SCS/antennas with a lowernumber of bit errors are preferred to SCS/antennas with a higher numberof bit errors, average SNR for a given SCS/antenna must be greater thana predetermined threshold to be designated as the primary; SCS/antennaswith higher average SNR are preferred over those with lower average SNR;SCS/antennas with lower SNR variance are preferred to those with higherSNR variance; and SCS/antennas with a faster SNR rate of change at theon-set of the transmission are preferred to those with a slower rate ofchange. The weighting applied to each of these criteria may be adjustedby the operator of the Wireless Location System to suit the particulardesign of each system.

The candidate list of SCS's 10 and antennas 10-1 are selected using apredetermined set of criteria based, for example, upon knowledge of thetypes of cell sites, types of antennas at the cell sites, geometry ofthe antennas, and a weighting factor that weights certain antennas morethan other antennas. The weighting factor takes into account knowledgeof the terrain in which the Wireless Location System is operating, pastempirical data on the contribution of each antenna has made to goodlocation estimates, and other factors that may be specific to eachdifferent WLS installation. In one embodiment, for example, the WirelessLocation System may select the candidate list to include all SCS's 10 upto a maximum number of sites (max_number_of_sites) that are closer thana predefined maximum radius from the primary site(max_radius_from_primary). For example, in an urban or suburbanenvironment, where there may be a large number of cell sites, themax_number_of_sites may be limited to nineteen. Nineteen sites wouldinclude the primary, the first ring of six sites surrounding the primary(assuming a classic hexagonal distribution of cell sites), and the nextring of twelve sites surrounding the first ring. This is depicted inFIG. 9. In another embodiment, in a suburban or rural environment,max_radius_from_primary may be set to 40 miles to ensure that the widestpossible set of candidate SCS/antennas is available. The WirelessLocation System is provided with means to limit the total number ofcandidate SCS's 10 to a maximum number (max_number_candidates), althougheach candidate SCS may be permitted to choose the best port from amongits available antennas. This limits the maximum time spent by theWireless Location System processing a particular location.Max_number_candidates may be set to thirty-two, for example, which meansthat in a typical three sector wireless communications system withdiversity, up to 32*6=192 total antennas could be considered forlocation processing for a particular transmission. In order to limit thetime spent processing a particular location, the Wireless LocationSystem is provided with means to limit the number of antennas used inthe location processing to max_number_antennas_processed.Max_number_antennas_processed is generally less thanmax_number_candidates, and is typically set to sixteen.

While the Wireless Location System is provided with the ability todynamically determine the candidate list of SCS's 10 and antennas basedupon the predetermined set of criteria described above, the WirelessLocation System can also store a fixed candidate list in a table. Thus,for each cell site and sector in the wireless communications system, theWireless Location System has a separate table that defines the candidatelist of SCS's 10 and antennas 10-1 to use whenever a wirelesstransmitter initiates a transmission in that cell site and sector.Rather than dynamically choose the candidate SCS/antennas each time alocation request is triggered, the Wireless Location System reads thecandidate list directly from the table when location processing isinitiated.

In general, a large number of candidate SCS's 10 is chosen to providethe Wireless Location System with sufficient opportunity and ability tomeasure and mitigate multipath. On any given transmission, any one ormore particular antennas at one or more SCS's 10 may receive signalsthat have been affected to varying degrees by multipath. Therefore, itis advantageous to provide this means within the Wireless LocationSystem to dynamically select a set of antennas that may have receivedless multipath than other antennas. The Wireless Location System usesvarious techniques to mitigate as much multipath as possible from anyreceived signal; however it is frequently prudent to choose a set ofantennas that contain the least amount of multipath.

Choosing Reference and Cooperating SCS/Antennas

In choosing the set of SCS/antennas to use in location processing, theWireless Location System orders the candidate SCS/antennas using severalcriteria, including for example: average SNR over the transmissioninterval used for location processing, the variance in the SNR over thesame interval, correlation of the beginning of the received transmissionagainst a pure pre-cursor (i.e., for AMPS, the dotting and Barker code)and/or demodulated data from the primary SCS/antenna, the time of theon-set of the transmission relative to the on-set reported at theSCS/antenna at which the transmission was demodulated, and the magnitudeand rate of change of the SNR from just before the on-set of thetransmission to the on-set of the transmission, as well as other similarparameters. The average SNR is typically determined at each SCS, and foreach antenna in the candidate list either over the entire length of thetransmission to be used for location processing, or over a shorterinterval. The average SNR over the shorter interval can be determined byperforming a correlation with the dotting sequence and/or Barker codeand/or sync word, depending on the particular air interface protocol,and over a short range of time before, during, and after the timestampreported by the primary SCS 10. The time range may typically be +/−200microseconds centered at the timestamp, for example. The WirelessLocation System will generally order the candidate SCS/antennas usingthe following criteria, each of which may be weighted when combining thecriteria to determine the final decision: average SNR for a givenSCS/antenna must be greater than a predetermined threshold to be used inlocation processing; SCS/antennas with higher average SNR are preferredover those with lower average SNR; SCS/antennas with lower SNR varianceare preferred to those with higher SNR variance; SCS/antennas with anon-set closer to the on-set reported by the demodulating SCS/antenna arepreferred to those with an on-set more distant in time; SCS/antennaswith a faster SNR rate of change are preferred to those with a slowerrate of change; SCS/antennas with lower incremental weighted GDOP arepreferred over those with higher incremental weighted GDOP, where theweighting is based upon estimated path loss from the primary SCS. Theweighting applied to each of these preferences may be adjusted by theoperator of the Wireless Location System to suit the particular designof each system. The number of different SCS's 10 used in the locationprocessing is maximized up to a predetermined limit; the number ofantennas used at each SCS 10 in limited to a predetermined limit; andthe total number of SCS/antennas used is limited tomax_number_antennas_processed. The SCS/antenna with the highest rankingusing the above described process is designated as the referenceSCS/antenna for location processing.

Best Port Selection Within an SCS 10

Frequently, the SCS/antennas in the candidate list or in the list to usein location processing will include only one or two antennas at aparticular SCS 10. In these cases, the Wireless Location System maypermit the SCS 10 to choose the “best port” from all or some of theantennas at the particular SCS 10. For example, if the Wireless LocationSystem chooses to use only one antenna at a first SCS 10, then the firstSCS 10 may select the best antenna port from the typical six antennaports that are connected to that SCS 10, or it may choose the bestantenna port from among the two antenna ports ofjust one sector of thecell site. The best antenna port is chosen by using the same process andcomparing the same parameters as described above for choosing the set ofSCS/antennas to use in location processing, except that all of theantennas being considered for best port are all in the same SCS 10. Incomparing antennas for best port, the SCS 10 may also optionally dividethe received signal into segments, and then measure the SNR separatelyin each segment of the received signal. Then, the SCS 10 can optionallychoose the best antenna port with highest SNR either by (i) using theantenna port with the most segments with the highest SNR, (ii) averagingthe SNR in all segments and using the antenna port with the highestaverage SNR, or (iii) using the antenna port with the highest SNR in anyone segment.

The “antenna selection” aspect of the present invention may besummarized as comprising the calculation of a number of parameters foreach of a plurality of baselines, and including in a final locationsolution only those baselines meeting or exceeding predefined thresholdcriteria for each of the parameters. This methodology is particularlyuseful in, although not necessarily limited to, applications involving aWireless Location System having signal collection systems and at leastone location processor for processing digital data provided by thesignal collection systems, wherein TDOA data is determined with respectto a plurality of first signal collection system/antenna—second signalcollection system/antenna baselines. The parameters may include theaverage power of the transmission as received at the second signalcollection system/antenna port used in a baseline and over an intervalused for location processing. Alternatively, the parameters may includethe peak power of the transmission as received at the second signalcollection system/antenna port used in a baseline and over an intervalused for location processing. Other alternatives for the parametersinclude: the variance in the power of the transmission as received atthe second signal collection system/antenna port used in a baseline andover an interval used for location processing; the correlation valuefrom a cross-spectra correlation between the second signal collectionsystem/antenna used in the baseline and a first signal collectionsystem/antenna; the delay value for the baseline; other multipathmitigation parameters; residual values remaining after multipathmitigation calculations; contribution of the second signal collectionsystem/antenna to a weighted geometric dilution of precision in thefinal location solution; and/or a measure of the quality of fit of thebaseline in the final location solution, if the baseline were included.

Detection and Recovery From Collisions

Because the Wireless Location System will use data from many SCS/antennaports in location processing, there is a chance that the received signalat one or more particular SCS/antenna ports will contain energy that isco-channel interference from another wireless transmitter (i.e., apartial or full collision between two separate wireless transmissionshas occurred). There is also a reasonable probability that theco-channel interference will have a much higher SNR than the signal fromthe target wireless transmitter, and if not detected by the WirelessLocation System, the co-channel interference may cause an incorrectchoice of best antenna port at an SCS 10, reference SCS/antenna,candidate SCS/antenna, or SCS/antenna to be used in location processing.The co-channel interference may also cause poor TDOA and FDOA results,leading to a failed or poor location estimate. The probability ofcollision increases with the density of cell sites in the host wirelesscommunications system, especially in dense suburban or ruralenvironments where the frequencies are re-used often and wireless usageby subscribers is high.

Therefore, the Wireless Location System includes means to detect andrecover from the types of collisions described above. For example, inthe process of selecting a best port, reference SCS/antenna, orcandidate SCS/antenna, the Wireless Location System determines theaverage SNR of the received signal and the variance of the SNR over theinterval of the transmission; when the variance of the SNR is above apredetermined threshold, the Wireless Location System assigns aprobability that a collision has occurred. If the signal received at anSCS/antenna has increased or decreased its SNR in a single step, and byan amount greater than a predetermined threshold, the Wireless LocationSystem assigns a probability that a collision has occurred. Further, ifthe average SNR of the signal received at a remote SCS is greater thanthe average SNR that would be predicted by a propagation model, giventhe cell site at which the wireless transmitter initiated itstransmission and the known transmit power levels and antenna patterns ofthe transmitter and receive antennas, the Wireless Location Systemassigns a probability that a collision has occurred. If the probabilitythat a collision has occurred is above a predetermined threshold, thenthe Wireless Location System performs the further processing describedbelow to verify whether and to what extent a collision may have impairedthe received signal at an SCS/antenna. The advantage of assigningprobabilities is to reduce or eliminate extra processing for themajority of transmissions for which collisions have not occurred. Itshould be noted that the threshold levels, assigned probabilities, andother details of the collision detection and recovery processesdescribed herein are configurable, i.e., selected based on theparticular application, environment, system variables, etc., that wouldaffect their selection.

For received transmissions at an SCS/antenna for which the probabilityof a collision is above the predetermined threshold and before using RFdata from a particular antenna port in a reference SCS/antennadetermination, best port determination or in location processing, theWireless Location System preferably verifies that the RF data from eachantenna port is from the correct wireless transmitter. This isdetermined, for example, by demodulating segments of the received signalto verify, for example, that the MIN, MSID, or other identifyinginformation is correct or that the dialed digits or other messagecharacteristics match those received by the SCS/antenna that initiallydemodulated the transmission. The Wireless Location System may alsocorrelate a short segment of the received signal at an antenna port withthe signal received at the primary SCS 10 and verify that at least thecorrelation result is above a predetermined threshold. If the WirelessLocation System detects that the variance in the SNR over the entirelength of the transmission is above a pre-determined threshold, theWireless Location System may divide the transmission into segments andtest each segment as described herein to determine whether the energy inthat segment is primarily from the signal from the wireless transmitterfor which location processing has been selected or from an interferingtransmitter.

The Wireless Location System may choose to use the RF data from aparticular SCS/antenna in location processing even if the WirelessLocation System has detected that a partial collision has occurred atthat SCS/antenna. In these cases, the SCS 10 uses the means describedabove to identify that portion of the received transmission whichrepresents a signal from the wireless transmitter for which locationprocessing has been selected, and that portion of the receivedtransmission which contains co-channel interference. The WirelessLocation System may command the SCS 10 to send or use only selectedsegments of the received transmission that do not contain the co-channelinterference. When determining the TDOA and FDOA for a baseline usingonly selected segments from an SCS/antenna, the Wireless Location Systemuses only the corresponding segments of the transmission as received atthe reference SCS/antenna. The Wireless Location System may continue touse all segments for baselines in which no collisions were detected. Inmany cases, the Wireless Location System is able to complete locationprocessing and achieve an acceptable location error using only a portionof the transmission. This inventive ability to select the appropriatesubset of the received transmission and perform location processing on asegment by segment basis enables the Wireless Location System tosuccessfully complete location processing in cases that might havefailed using previous techniques.

Multiple Pass Location Processing

Certain applications may require a very fast estimate of the generallocation of a wireless transmitter, followed by a more accurate estimateof the location that can be sent subsequently. This can be valuable, forexample, for E9-1-1 systems that handle wireless calls and must make acall routing decision very quickly, but can wait a little longer for amore exact location to be displayed upon the E9-1-1 call-taker'selectronic map terminal. The Wireless Location System supports theseapplications with an inventive multiple pass location processing mode.

In many cases, location accuracy is enhanced by using longer segments ofthe transmission and increasing the processing gain through longerintegration intervals. But longer segments of the transmission requirelonger processing periods in the SCS 10 and TLP 12, as well as longertime periods for transmitting the RF data across the communicationsinterface from the SCS 10 to the TLP 12. Therefore, the WirelessLocation System includes means to identify those transmissions thatrequire a fast but rough estimate of the location followed by morecomplete location processing that produces a better location estimate.The Signal of Interest Table includes a flag for each Signal of Interestthat requires a multiple pass location approach. This flag specifies themaximum amount of time permitted by the requesting location applicationfor the first estimate to be sent, as well as the maximum amount of timepermitted by the requesting location application for the final locationestimate to be sent. The Wireless Location System performs the roughlocation estimate by selecting a subset of the transmission for which toperform location processing. The Wireless Location System may choose,for example, the segment that was identified at the primary SCS/antennawith the highest average SNR. After the rough location estimate has beendetermined, using the methods described earlier, but with only a subsetof the transmission, the TLP 12 forwards the location estimate to the AP14, which then forwards the rough estimate to the requesting applicationwith a flag indicating that the estimate is only rough. The WirelessLocation System then performs its standard location processing using allof the aforementioned methods, and forwards this location estimate witha flag indicating the final status of this location estimate. TheWireless Location System may perform the rough location estimate and thefinal location estimate sequentially on the same DSP in a TLP 12, or mayperform the location processing in parallel on different DSP's. Parallelprocessing may be necessary to meet the maximum time requirements of therequesting location applications. The Wireless Location System supportsdifferent maximum time requirements from different location applicationsfor the same wireless transmission.

Very Short Baseline TDOA

The Wireless Location System is designed to operate in urban, suburban,and rural areas. In rural areas, when there are not sufficient cellsites available from a single wireless carrier, the Wireless LocationSystem can be deployed with SCS's 10 located at the cell sites of otherwireless carriers or at other types of towers, including AM or FM radiostation, paging, and two-way wireless towers. In these cases, ratherthan sharing the existing antennas of the wireless carrier, the WirelessLocation System may require the installation of appropriate antennas,filters, and low noise amplifiers to match the frequency band of thewireless transmitters of interest to be located. For example, an AMradio station tower may require the addition of 800 MHz antennas tolocate cellular band transmitters. There may be cases, however, where noadditional towers of any type are available at reasonable cost and theWireless Location System must be deployed on just a few towers of thewireless carrier. In these cases, the Wireless Location System supportsan antenna mode known as very short baseline TDOA. This antenna modebecomes active when additional antennas are installed on a single cellsite tower, whereby the antennas are placed at a distance of less thanone wavelength apart. This may require the addition of just one antennaper cell site sector such that the Wireless Location System uses oneexisting receive antenna in a sector and one additional antenna that hasbeen placed next to the existing receive antenna. Typically, the twoantennas in the sector are oriented such that the primary axes, or lineof direction, of the main beams are parallel and the spacing between thetwo antenna elements is known with precision. In addition, the two RFpaths from the antenna elements to the receivers in the SCS 10 arecalibrated.

In its normal mode, the Wireless Location System determines the TDOA andFDOA for pairs of antenna that are separated by many wavelengths. For aTDOA on a baseline using antennas from two difference cell sites, thepairs of antennas are separated by thousands of wavelengths. For a TDOAon a baseline using antennas at the same cell site, the pairs ofantennas are separated by tens of wavelengths. In either case, the TDOAdetermination effectively results in a hyperbolic line bisecting thebaseline and passing through the location of the wireless transmitter.When antennas are separated by multiple wavelengths, the received signalhas taken independent paths from the wireless transmitter to eachantenna, including experiencing different multipath and Doppler shifts.However, when two antennas are closer than one wavelength, the tworeceived signals have taken essentially the same path and experiencedthe same fading, multipath, and Doppler shift. Therefore, the TDOA andFDOA processing of the Wireless Location System typically produces aDoppler shift of zero (or near-zero) hertz, and a time difference on theorder of zero to one nanosecond. A time difference that short isequivalent to an unambiguous phase difference between the signalsreceived at the two antennas on the very short baseline. For example, at834 MHz, the wavelength of an AMPS reverse control channel transmissionis about 1.18 feet. A time difference of 0.1 nanoseconds is equivalentto a received phase difference of about 30 degrees. In this case, theTDOA measurement produces a hyperbola that is essentially a straightline, still passing through the location of the wireless transmitter,and in a direction that is rotated 30 degrees from the direction of theparallel lines formed by the two antennas on the very short baseline.When the results of this very short baseline TDOA at the single cellsite are combined with a TDOA measurement on a baseline between two cellsites, the Wireless Location System can determine a location estimateusing only two cell sites.

Bandwidth Monitoring Method for Improving Location Accuracy

AMPS cellular transmitters presently comprise the large majority of thewireless transmitters used in the U.S. and AMPS reverse voice channeltransmissions are generally FM signals modulated by both voice and asupervisory audio tone (SAT). The voice modulation is standard FM, andis directly proportional to the speaking voice of the person using thewireless transmitter. In a typical conversation, each person speaks lessthat 35% of the time, which means that most of the time the reversevoice channel is not being modulated due to voice. With or withoutvoice, the reverse channel is continuously modulated by SAT, which isused by the wireless communications system to monitor channel status.The SAT modulation rate is only about 6 KHz. The voice channels supportin-band messages that are used for hand-off control and for otherreasons, such as for establishing a 3-way call, for answering a secondincoming call while already on a first call, or for responding to an‘audit’ message from the wireless communications system. All of thesemessages, though carried on the voice channel, have characteristicssimilar to the control channel messages. These messages are transmittedinfrequently, and location systems have ignored these messages andfocused on the more prevalent SAT transmissions as the signal ofinterest.

In view of the above-described difficulties presented by the limitedbandwidth of the FM voice and SAT reverse voice channel signals, anobject of the present invention is to provide an improved method bywhich reverse voice channel (RVC) signals may be utilized to locate awireless transmitter, particularly in an emergency situation. Anotherobject of the invention is to provide a location method that allows thelocation system to avoid making location estimates using RVC signals insituations in which it is likely that the measurement will not meetprescribed accuracy and reliability requirements. This saves systemresources and improves the location system's overall efficiency. Theimproved method is based upon two techniques. FIG. 10A is a flowchart ofa first method in accordance with the present invention for measuringlocation using reverse voice channel signals. The method comprises thefollowing steps:

(i) It is first assumed that a user with a wireless transmitter wishesto be located, or wishes to have his location updated or improved upon.This may be the case, for example, if the wireless user has dialed “911”and is seeking emergency assistance. It is therefore also assumed thatthe user is coherent and in communication with a centrally locateddispatcher.

(ii) When the dispatcher desires a location update for a particularwireless transmitter, the dispatcher sends a location update commandwith the identity of the wireless transmitter to the Wireless LocationSystem over an application interface.

(iii) The Wireless Location System responds to the dispatcher with aconfirmation that the Wireless Location System has queried the wirelesscommunications system and has obtained the voice channel assignment forthe wireless transmitter.

(iv) The dispatcher instructs the wireless user to dial a 9 or moredigit number and then the “SEND” button. This sequence may be somethinglike “123456789” or “911911911”. Two functions happen to the reversevoice channel when the wireless user dial a sequence of at least 9digits and then the “SEND” button. First, especially for an AMPScellular voice channel, the dialing of digits causes the sending of dualtone multi-frequency (DTMF) tones over the voice channel. The modulationindex of DTMF tones is very high and during the sending of each digit inthe DTMF sequence will typically push the bandwidth of the transmittedsignal beyond +/−10 KHz. The second function occurs at the pressing ofthe “SEND” button. Whether or not the wireless user subscribes to 3-waycalling or other special features, the wireless transmitter will send amessage over the voice using a “blank and burst” mode where thetransmitter briefly stops sending the FM voice and SAT, and insteadsends a bursty message modulated in the same manner as the controlchannel (10 Kbits Manchester). If the wireless user dials less than 9digits, the message will be comprised of approximately 544 bits. If thewireless user dials 9 or more digits, the message is comprised ofapproximately 987 bits.

(v) After notification by the dispatcher, the Wireless Location Systemmonitors the bandwidth of the transmitted signal in the voice channel.As discussed earlier, when only the SAT is being transmitted, and evenif voice and SAT are being transmitted, there may not be sufficientbandwidth in the transmitted signal to calculate a high quality locationestimate. Therefore, the Wireless Location System conserves locationprocessing resources and waits until the transmitted signal exceeds apredetermined bandwidth. This may be, for example, set somewhere in therange of 8 KHz to 12 KHz. When the DTMF dialed digits are sent or whenthe bursty message is sent, the bandwidth would typically exceed thepredetermined bandwidth. In fact, if the wireless transmitter doestransmit the DTMF tones during dialing, the bandwidth would be expectedto exceed the predetermined bandwidth multiple times. This would providemultiple opportunities to perform a location estimate. If the DTMF tonesare not sent during dialing, the bursty message is still sent at thetime of pressing “SEND”, and the bandwidth would typically exceed thepredetermined threshold.

(vi) Only when the transmitted bandwidth of the signal exceeds thepredetermined bandwidth, the Wireless Location System initiates locationprocessing.

FIG. 10B is a flowchart of another method in accordance with the presentinvention for measuring location using reverse voice channel signals.The method comprises the following steps:

(i) It is first assumed that a user with a wireless transmitter wishesto be located, or wishes to have their location updated or improvedupon. This may be the case, for example, if the wireless user has dialed“911” and is seeking emergency assistance. It is assumed that the usermay not wish to dial digits or may not be able to dial any digits inaccordance with the previous method.

(ii) When the dispatcher desires a location update for a particularwireless transmitter user, the dispatcher sends a location updatecommand to the Wireless Location System over an application interfacewith the identity of the wireless transmitter.

(iii) The Wireless Location System responds to the dispatcher with aconfirmation.

(iv) The Wireless Location System commands the wireless communicationssystem to make the wireless transmitter transmit by sending an “audit”or similar message to the wireless transmitter. The audit message is amechanism by which the wireless communications system can obtain aresponse from the wireless transmitter without requiring an action bythe end-user and without causing the wireless transmitter to ring orotherwise alert. The receipt of an audit message causes the wirelesstransmitter to respond with an “audit response” message on the voicechannel.

(v) After notification by the dispatcher, the Wireless Location Systemmonitors the bandwidth of the transmitted signal in the voice channel.As discussed earlier, when only the SAT is being transmitted, and evenif voice and SAT are being transmitted, there may not be sufficientbandwidth in the transmitted signal to calculate a high quality locationestimate. Therefore, the radio location conserves location processingresources and waits until the transmitted signal exceeds a predeterminedbandwidth. This may be, for example, set somewhere in the range of 8 KHzto 12 KHz. When the audit response message is sent, the bandwidth wouldtypically exceed the predetermined bandwidth.

(vi) Only when the transmitted bandwidth of the signal exceeds thepredetermined bandwidth, the Wireless Location System initiates locationprocessing.

Estimate Combination Method for Improving Location Accuracy

The accuracy of the location estimate provided by the Wireless LocationSystem may be improved by combining multiple statistically-independentlocation estimates made while the wireless transmitter is maintainingits position. Even when a wireless transmitter is perfectly stationary,the physical and RF environment around a wireless transmitter isconstantly changing. For example, vehicles may change their position oranother wireless transmitter which had caused a collision during onelocation estimate may have stopped transmitting or changed its positionso as to no longer collide during subsequent location estimates. Thelocation estimate provided by the Wireless Location System willtherefore change for each transmission, even if consecutivetransmissions are made within a very short period of time, and eachlocation estimate is statistically independent of the other estimates,particularly with respect to the errors caused by the changingenvironment.

When several consecutive statistically independent location estimatesare made for a wireless transmitter that has not changed its position,the location estimates will tend to cluster about the true position. TheWireless Location System combines the location estimates using aweighted average or other similar mathematical construct to determinethe improved estimate. The use of a weighted average is aided by theassignment of a quality factor to each independent location estimate.This quality factor may be based upon, for example, the correlationvalues, confidence interval, or other similar measurements derived fromthe location processing for each independent estimate. The WirelessLocation System optionally uses several methods to obtain multipleindependent transmissions from the wireless transmitter, including (i)using its interface to the wireless communications system for the MakeTransmit command; (ii) using multiple consecutive bursts from a timeslot based air interface protocol, such as TDMA or GSM; or (iii)dividing a voice channel transmission into multiple segments over aperiod of time and performing location processing independently for eachsegment. As the Wireless Location System increases the number ofindependent location estimates being combined into the final locationestimate, it monitors a statistic indicating the quality of the cluster.If the statistic is below a prescribed threshold value, then theWireless Location System assumes that the wireless transmitter ismaintaining its position. If the statistic rises above the prescribedthreshold value, the Wireless Location System assume that the wirelesstransmitter is not maintaining its position and therefore ceases toperform additional location estimates. The statistic indicating thequality of the cluster may be, for example, a standard deviationcalculation or a root mean square (RMS) calculation for the individuallocation estimates being combined together and with respect to thedynamically calculated combined location estimate. When reporting alocation record to a requesting application, the Wireless LocationSystem indicates, using a field in the location record, the number ofindependent location estimate combined together to produce the reportedlocation estimate.

Another exemplary process for obtaining and combining multiple locationestimates will now be explained with reference to FIGS. 11A-11D. FIGS.11A, 11B and 11C schematically depict the well-known “origination”,“page response,” and “audit” sequences of a wireless communicationssystem. As shown in FIG. 11A, the origination sequence (initiated by thewireless phone to make a call) may require two transmissions from thewireless transmitter, an “originate” signal and an “order confirmation”signal. The order confirmation signal is sent in response to a voicechannel assignment from the wireless communications system (e.g., MSC).Similarly, as shown in FIG. 11B, a page sequence may involve twotransmissions from the wireless transmitter. The page sequence isinitiated by the wireless communications system, e.g., when the wirelesstransmitter is called by another phone. After being paged, the wirelesstransmitter transmits a page response; and then, after being assigned avoice channel, the wireless transmitter transmits an order confirmationsignal. The audit process, in contrast, elicits a single reversetransmission, an audit response signal. An audit and audit responsesequence has the benefit of not ringing the wireless transmitter whichis responding.

The manner in which these sequences may be used to locate a phone withimproved accuracy will now be explained. According to the presentinvention, for example, a stolen phone, or a phone with a stolen serialnumber, is repeatedly pinged with an audit signal, which forces it torespond with multiple audit responses, thus permitting the phone to belocated with greater accuracy. To use the audit sequence, however, theWireless Location System sends the appropriate commands using itsinterface to the wireless communications system, which sends the auditmessage to the wireless transmitter. The Wireless Location System canalso force a call termination (hang up) and then call the wirelesstransmitter back using the standard ANI code. The call can be terminatedeither by verbally instructing the mobile user to disconnect the call,by disconnecting the call at the landline end of the call, or by sendingan artificial over-the-air disconnect message to the base station. Thisover-the-air disconnect message simulates the pressing of the “END”button on a mobile unit. The call-back invokes the abovedescribed pagingsequence and forces the phone to initiate two transmissions that can beutilized to make location estimates.

Referring now to FIG. 11D, the inventive high accuracy location methodwill now be summarized. First, an initial location estimate is made.Next, the above-described audit or “hang up and call back” process isemployed to elicit a responsive transmission from the mobile unit, andthen a second location estimate is made. Whether the audit or “hang upand call back” process is used will depend on whether the wirelesscommunications system and wireless transmitter have both implemented theaudit functionality. Steps second and third steps are repeated to obtainhowever many independent location estimates are deemed to be necessaryor desirable, and ultimately the multiple statistically-independentlocation estimates are combined in an average, weighted average, orsimilar mathematical construct to obtain an improved estimate. The useof a weighted average is aided by the assignment of a quality factor toeach independent location estimate. This quality factor may be basedupon a correlation percentage, confidence interval, or other similarmeasurements derived from the location calculation process.

Bandwidth Synthesis Method for Improving Location Accuracy

The Wireless Location System is further capable of improving theaccuracy of location estimates for wireless transmitters whose bandwidthis relatively narrow using a technique of artificial bandwidthsynthesis. This technique can applied, for example, to thosetransmitters that use the AMPS, NAMPS, TDMA, and GSM air interfaceprotocols and for which there are a large number of individual RFchannels available for use by the wireless transmitter. For exemplarypurposes, the following description shall refer to AMPS-specificdetails; however, the description can be easily altered to apply toother protocols. This method relies on the principle that each wirelesstransmitter is operative to transmit only narrowband signals atfrequencies spanning a predefined wide band of frequencies that is widerthan the bandwidth of the individual narrowband signals transmitted bythe wireless transmitter. This method also relies on the aforementionedinterface between the Wireless Location System and the wirelesscommunications system over which the WLS can command the wirelesscommunications system to make a wireless transmitter handoff or switchto another frequency or RF channel. By issuing a series of commands, theWireless Location System can force the wireless transmitter to switchsequentially and in a controlled manner to a series of RF channels,allowing the WLS effectively to synthesize a wider band received signalfrom the series of narrowband transmitted signals for the purpose oflocation processing.

In a presently preferred embodiment of the invention, the bandwidthsynthesis means includes means for determining a wideband phase versusfrequency characteristic of the transmissions from the wirelesstransmitter. For example, the narrowband signals typically have abandwidth of approximately 20 KHz and the predefined wide band offrequencies spans approximately 12.5 MHz, which in this example, is thespectrum allocated to each cellular carrier by the FCC. With bandwidthsynthesis, the resolution of the TDOA measurements can be increased toabout 1/12.5 MHz; i.e., the available time resolution is the reciprocalof the effective bandwidth.

A wireless transmitter, a calibration transmitter (if used), SCS's 10A,10B and 10C, and a TLP 12 are shown in FIG. 12A. The location of thecalibration transmitter and all three SCS's are accurately known apriori. Signals, represented by dashed arrows in FIG. 12A, aretransmitted by the wireless transmitter and calibration transmitter, andreceived at SCS's 10A, 10B and 10C, and processed using techniquespreviously described. During the location processing, RF data from oneSCS (e.g. 10B) is cross-correlated (in the time or frequency domain)with the data stream from another SCS (e.g., 10C) separately for eachtransmitter and for each pair of SCS's 10 to generate TDOA estimatesTDOA₂₃ and TDOA₁₃. An intermediate output of the location processing isa set of coefficients representing the complex cross-power as a functionof frequency (e.g., R₂₃).

For example, if X(f) is the Fourier transform of the signal x(t)received at a first site and Y(f) is the Fourier transform of the signaly(t) received at a second site, then the complex cross-powerR(f)=X(f)Y*(f), where Y* is the complex conjugate of Y. The phase angleof R(f) at any frequency f equals the phase of X(f) minus the phase ofY(f). The phase angle of R(f) may be called the fringe phase. In theabsence of noise, interference, and other errors, the fringe phase is aperfectly linear function of frequency within a (contiguous) frequencyband observed; and slope of the line is minus the interferometric groupdelay, or TDOA; the intercept of the line at the band center frequency,equal to the average value of the phase of R(f), is called “the” fringephase of the observation when reference is being made to the whole band.Within a band, the fringe phase may be considered to be a function offrequency.

The coefficients obtained for the calibration transmitter are combinedwith those obtained for the wireless transmitter and the combinationsare analyzed to obtain calibrated TDOA measurements TDOA₂₃ and TDOA₁₃,respectively. In the calibration process, the fringe phase of thecalibration transmitter is subtracted from the fringe phase of thewireless transmitter in order to cancel systematic errors that arecommon to both. Since each original fringe phase is itself thedifference between the phases of signals received at two SCS's 10, thecalibration process is often called double-differencing and thecalibrated result is said to be doubly-differenced. TDOA estimate T-ijis a maximum-likelihood estimate of the time difference of arrival(TDOA), between sites i and j, of the signal transmitted by the wirelesstransmitter, calibrated and also corrected for multipath propagationeffects on the signals. TDOA estimates from different pairs of cellsites are combined to derive the location estimate. It is well knownthat more accurate TDOA estimates can be obtained by observing a widerbandwidth. It is generally not possible to increase the “instantaneous”bandwidth of the signal transmitted by a wireless transmitter, but it ispossible to command a wireless transmitter to switch from one frequencychannel to another so that, in a short time, a wide bandwidth can beobserved.

In a typical non-wireline cellular system, for example, channels 313-333are control channels and the remaining 395 channels are voice channels.The center frequency of a wireless transmitter transmitting on voice RFchannel number 1 (RVC 1) is 826.030 MHz and the center-to-centerfrequency spacing of successive channels of 0.030 MHz. The number ofvoice channels assigned to each cell of a typical seven-cellfrequency-reuse block is about 57 (i.e., 395 divided by 7) and thesechannels are distributed throughout the 395-channel range, spaced every7 channels. Note then that each cell site used in an AMPS system haschannels that span the entire 12.5 MHz band allocated by the FCC. If,for example, we designate cells of each frequency set in a re-usepattern as cells “A” through “G”, the channel numbers assigned to the“A” cell(s) might be 1, 8, 15, 22, . . . , 309; the numbers of thechannels assigned to the “B” cells are determined by adding 1 to the “A”channel numbers; and so on through G.

The method begins when the wireless transmitter has been assigned to avoice RF channel, and the Wireless Location System has triggeredlocation processing for the transmissions from the wireless transmitter.As part of the location processing, the TDOA estimates TDOA₁₃ and TDOA₂₃combined may have, for example, a standard deviation error of 0.5microsecond. The method combining measurements from different RFchannels exploits the relation between TDOA, fringe phase, and radiofrequency. Denote the “true” value of the group delay or TDOA, i.e., thevalue that would be observed in the absence of noise, multipath, and anyinstrumental error, by τ; similarly, denote the true value of fringephase by φ; and denote the radio frequency by f. The fringe phase φ isrelated to τ and f by:

φ=−fτ+n  (Eq. 1)

where φ is measured in cycles, f in Hz and τ in seconds; and n is aninteger representing the intrinsic integer-cycle ambiguity of adoubly-differenced phase measurement. The value of n is unknown a prioribut is the same for observations at contiguous frequencies, i.e., withinany one frequency channel. The value of n is generally different for.observations at separated frequencies. τ can be estimated fromobservations in a single frequency channel is, in effect, by fitting astraight line to the fringe phase observed as a function of frequencywithin the channel. The slope of the best-fitting line equals minus thedesired estimate of τ. In the single-channel case, n is constant and soEq. 1 can be differentiated to obtain:

dφ/df=−τ  (Eq. 2).

Independent estimates of τ are obtainable by straight-line fitting tothe observations of φ vs. f separately for each channel, but when twoseparate (non-contiguous) frequency channels are observed, a singlestraight line will not generally fit the observations of φ vs. f fromboth channels because, in general, the integer n has different valuesfor the two channels. However, under certain conditions, it is possibleto determine and remove the difference between these two integer valuesand then to fit a single straight line to the entire set of phase dataspanning both channels. The slope of this straight line will be muchbetter determined because it is based on a wider range of frequencies.Under certain conditions, the uncertainty of the slope estimate isinversely proportional to the frequency span.

In this example, suppose that the wireless transmitter has been assignedto voice RF channel 1. The radio frequency difference between channels 1and 416 is so great that initially the difference between the integersn₁ and n₄₁₆ corresponding to these channels cannot be determined.However, from the observations in either or both channels takenseparately, an initial TDOA estimate τ₀ can be derived. Now the WirelessLocation System commands the wireless communications system to make thewireless transmitter to switch from channel 1 to channel 8. The wirelesstransmitter's signal is received in channel 8 and processed to update orrefine the estimate τ₀. From τ₀, the “theoretical” fringe-phase φ₀as afunction of frequency can be computed, equal to (−fτ₀). The differencebetween the actually observed phase φ and the theoretical function φ₀can be computed, where the actually observed phase equals the true phasewithin a very small fraction, typically {fraction (1/50)}th, of a cycle:

φ−φ₀ =−f(τ−τ₀)+n ₁ or n ₈, depending on the channel  (Eq. 3)

or

Δφ=−Δfτ−n ₁ or n ₈, depending on the channel  (Eq. 4)

where Δφ≡φ−φ₀ and Δτ≡τ−τ₀. Equation (4) is graphed in FIG. 12B,depicting the difference, Δφ, between the observed fringe phase φ andthe value φ₀ computed from the initial TDOA estimate τ₀, versusfrequency f for channels 1 and 8.

For the 20 KHz-wide band of frequencies corresponding to channel 1, agraph of Δφ vs. f is typically a horizontal straight line. For the 20KHz-wide band of frequencies corresponding to channel 8, the graph of Δφvs. f is also horizontal straight line. The slopes of these linesegments are generally nearly zero because the quantity (fΔτ) usuallydoes not vary by a significant fraction of a cycle within 20 KHz,because Δτ is minus the error of the estimate τ₀. The magnitude of thiserror typically will not exceed 1.5 microseconds (3 times the standarddeviation of 0.5 microseconds in this example), and the product of 1.5microseconds and 20 KHz is under 4% of a cycle. In FIG. 12B, the graphof Δφ for channel 1 is displaced vertically from the graph of Δφ forchannel 8 by a relatively large amount because the difference between n₁and n₈ can be arbitrarily large. This vertical displacement, ordifference between the average values of Δφ for channels 1 and 8, will(with extremely high probability) be within ±0.3 cycle of the true valueof the difference, n₁ and n₈, because the product of the maximum likelymagnitude of Δτ (1.5 microseconds) and the spacing of channels 1 and 8(210 KHz) is 0.315 cycle. In other words, the difference n₁−n₈ is equalto the difference between the average values of Δφ for channels 1 and 8,rounded to the nearest integer. After the integer difference n₁−n₈ isdetermined by this rounding procedure, the integer Δφ is added forchannel 8 or subtracted from Δφ for channel 1. The difference betweenthe average values of Δφ for channels 1 and 8 is generally equal to theerror in the initial TDOA estimate, τ₀, times 210 KHz. The differencebetween the average values of τφ for channels 1 and 8 is divided by 210KHz and the result is added to τ₀ to obtain an estimate of τ, the truevalue of the TDOA; this new estimate can be significantly more accuratethan τ₀.

This frequency-stepping and TDOA-refining method can be extended to morewidely spaced channels to obtain yet more accurate results. If τ₁ isused to represent the refined result obtained from channels 1 and 8, τ₀can be replaced by τ₁ in the just-described method; and the WirelessLocation System can command the wireless communications system to makethe wireless transmitter switch, e.g., from channel 8 to channel 36;then τ₁ can be used to determine the integer difference n₈−n₃₆ and aTDOA estimate can be obtained based on the 1.05 MHz frequency spanbetween channels 1 and 36. The estimated can be labeled τ₂; and thewireless transmitter switched, e.g., from channel 36 to 112, and so on.In principle, the full range of frequencies allocated to the cellularcarrier can be spanned. The channel numbers (1, 8, 36, 112) used in thisexample are, of course, arbitrary. The general principle is that anestimate of the TDOA based on a small frequency span (starting with asingle channel) is used to resolve the integer ambiguity of the fringephase difference between more widely separated frequencies. The latterfrequency separation should not be too large; it is limited by theuncertainty of the prior estimate of TDOA. In general, the worst-caseerror in the prior estimate multiplied by the frequency difference maynot exceed 0.5 cycle.

If the very smallest (e.g., 210 KHz) frequency gap between the mostclosely spaced channels allocated to a particular cell cannot be bridgedbecause the worst-case uncertainty of the single-channel TDOA estimateexceeds 2.38 microseconds (equal to 0.5 cycle divided by 0.210 MHz), theWireless Location System commands the wireless communications system toforce the wireless transmitter hand-off from one cell site to another(e.g. from one frequency group to another), such that the frequency stepis smaller. There is a possibility of misidentifying the integerdifference between the phase differences (Δφ's) for two channels, e.g.,because the wireless transmitter moved during the handoff from onechannel to the other. Therefore, as a check, the Wireless LocationSystem may reverse each handoff (e.g., after switching from channel 1 tochannel 8, switch from channel 8 back to channel 1) and confirm that theinteger-cycle difference determined has precisely the same magnitude andthe opposite sign as for the “forward” hand-off. A significantly nonzerovelocity estimate from the single-channel FDOA observations can be usedto extrapolate across the time interval involved in a channel change.Ordinarily this time interval can be held to a small fraction of 1second. The FDOA estimation error multiplied by the time intervalbetween channels must be small in comparison with 0.5 cycle. TheWireless Location System preferably employs a variety of redundanciesand checks against integer-misidentification.

Directed Retry for 911

Another inventive aspect of the Wireless Location System relates to a“directed retry” method for use in connection with a dual-mode wirelesscommunications system supporting at least a first modulation method anda second modulation method. In such a situation, the first and secondmodulation methods are assumed to be used on different RF channels (i.e.channels for the wireless communications system supporting a WLS and thePCS system, respectively). It is also assumed that the wirelesstransmitter to be located is capable of supporting both modulationmethods, i.e. is capable of dialing “911” on the wireless communicationssystem having Wireless Location System support.

For example, the directed retry method could be used in a system inwhich there are an insufficient number of base stations to support aWireless Location System, but which is operating in a region served by aWireless Location System associated with another wireless communicationssystem. The “first” wireless communications system could be a cellulartelephone system and the “second” wireless communications system couldbe a PCS system operating within the same territory as the first system.According to the invention, when the mobile transmitter is currentlyusing the second (PCS) modulation method and attempts to originate acall to 911, the mobile transmitter is caused to switch automatically tothe first modulation method, and then to originate the call to 911 usingthe first modulation method on one of the set of RF channels prescribedfor use by the first wireless communications system. In this manner,location services can be provided to customers of a PCS or like systemthat does is not served by its own Wireless Location System.

Conclusion

The true scope the present invention is not limited to the presentlypreferred embodiments disclosed herein. For example, the foregoingdisclosure of a presently preferred embodiment of a Wireless LocationSystem uses explanatory terms, such as Signal Collection System (SCS),TDOA Location Processor (TLP), Applications Processor (AP), and thelike, which should not be construed so as to limit the scope ofprotection of the following claims, or to otherwise imply that theinventive aspects of the Wireless Location System are limited to theparticular methods and apparatus disclosed. Moreover, as will beunderstood by those skilled in the art, many of the inventive aspectsdisclosed herein may be applied in location systems that are not basedon TDOA techniques. For example, the processes by which the WirelessLocation System uses the Tasking List, etc., can be applied to non-TDOAsystems. In such non-TDOA systems, the TLP's described above would notbe required to perform TDOA calculations. Similarly, the invention isnot limited to systems employing SCS's constructed as described above,nor to systems employing AP's meeting all of the particulars describedabove. The SCS's, TLP's and AP's are, in essence, programmable datacollection and processing devices that could take a variety of formswithout departing from the inventive concepts disclosed herein. Giventhe rapidly declining cost of digital signal processing and otherprocessing functions, it is easily possible, for example, to transferthe processing for a particular function from one of the functionalelements (such as the TLP) described herein to another functionalelement (such as the SCS or AP) without changing the inventive operationof the system. In many cases, the place of implementation (i.e., thefunctional element) described herein is merely a designer's preferenceand not a hard requirement. Accordingly, except as they may be expresslyso limited, the scope of protection of the following claims is notintended to be limited to the specific embodiments described above.

I claim:
 1. A method for use in a wireless location system to locate awireless transmitter using a plurality of narrowband receivers,comprising: (a) causing said plurality of receivers to follow anautomatic sequential tuning mode of operation in which the receiverssequentially and in unison tune to a plurality of predefined RF channelsand receive signal transmissions in said channels; and (b) performinglocation processing on the signals received during the automaticsequential tuning mode of operation.
 2. A method as recited in claim 1and further comprising generating a location record and using thelocation record to determine the identity of a wireless transmitterbeing located.
 3. A method as recited in claim 2, wherein the locationrecord identifies a time stamp, RF channel, and location.
 4. A method asrecited in claim 3, wherein the transmissions are TDMA transmissions andthe location record further identifies a time slot.
 5. A method asrecited in claim 4, wherein the location record further identifies acell site.
 6. A method as recited in claim 5, wherein the locationrecord is matched to data indicating which wireless transmitters were inuse at the time, and which cell sites, RF channels, and time slots wereused by each wireless transmitter.
 7. A method as recited in claim 1,wherein the transmission are AMPS transmissions.
 8. A method as recitedin claim 7, wherein the bandwidth of the narrowband receivers is largerthan the bandwidth of the received signals.
 9. A method as recited inclaim 2, wherein one or more wireless transmitters are determined to beof interest, and wherein a location record is generated for eachwireless transmitter of interest and the received signals from remainingwireless transmitters are discarded.
 10. A method as recited in claim 1,wherein steps (a) and (b) are performed without determining the identityof the wireless transmitters being located.
 11. A method as recited inclaim 1, wherein said predefined RF channels are voice or trafficchannels.
 12. A method as recited in claim 1, wherein one or morelocation estimations are determined to be high priority, and the methodallows for preemption of scheduling for high priority locationestimations.
 13. A method as recited in claim 1, wherein the wirelesslocation system employs time difference of arrival (TDOA) and/orangle-of-arrival (AOA) for location estimation.
 14. A method as recitedin claim 1, further comprising allowing for periods of time in thesequential tuning process in which random tuning is allowed.
 15. Amethod for use in a wireless location system to locate wirelesstransmitters using a plurality of narrowband receivers, comprising: (a)using said plurality of receivers in a mode of operation in which thereceivers sequentially and in unison are tuned to a plurality ofpredefined RF channels and receive signal transmissions in saidchannels; (b) performing location processing on the signals receivedduring step (a); and (c) generating a location record identifying anestimated location of at least one wireless transmitter.
 16. A method asrecited in claim 15, wherein said predefined RF channels are voicechannels.
 17. A method as recited in claim 15, wherein said predefinedRF channels are traffic channels.
 18. A method as recited in claim 15,wherein the transmissions are TDMA transmissions and the location recordfurther identifies a time stamp, RF channel, and time slot.
 19. A methodas recited in claim 15, wherein the transmissions are AMPStransmissions.
 20. A method as recited in claim 15, wherein thetransmissions are CDMA transmissions.
 21. A method as recited in claim15, wherein the transmissions are GSM transmissions.
 22. A method asrecited in claim 15, wherein the transmissions are control channeltransmissions.
 23. A method as recited in claim 15, wherein thetransmissions are packet channel transmissions.
 24. A method as recitedin claim 15, further comprising allowing for periods of time in thesequential tuning process in which random tuning is allowed.
 25. Awireless location system (WLS) overlaid on an associated wirelesscommunications system, comprising: a pluraity of geographicallyseparated signal collection systems comprising narrowband receivers; andmeans for sequentially and in unison tuning said receivers to aplurality of predefined RF channels, and for recording signaltransmissions in said channels.
 26. A WLS as recited in claim 25 andfurther comprising means for performing location processing on therecorded signals.
 27. A WLS as recited in claim 26 and furthercomprising means for generating a location record identifying anestimated location of at least one wireless transmitter.
 28. A WLS asrecited in claim 27 and further comprising means for identifying the atleast one transmitter by matching the location record to data indicatingwhich wireless transmitters were in use at a time corresponding to thelocation record, and which cell sites and RF channels were used by eachwireless transmitter.
 29. A WLS as recited in claim 25, wherein saidpredefined RF channels are voice channels.
 30. A WLS as recited in claim25, wherein said predefined RF channels are traffic channels.
 31. A WLSas recited in claim 27, wherein the transmissions are TDMA transmissionsand the location record further identifies a time stamp, RF channel, andtime slot.
 32. A WLS as recited in claim 25, wherein the transmissionsare AMPS transmissions.
 33. A WLS as recited in claim 32, wherein thebandwidth of the narrowband receivers is less than the bandwidth of thetransmissions.
 34. A WLS as recited in claim 25, wherein thetransmissions are CDMA transmissions.
 35. A WLS as recited in claim 25,wherein the transmissions are GSM transmissions.
 36. A WLS as recited inclaim 25, wherein the transmissions are control channel transmissions.37. A WLS as recited in claim 25, wherein the transmissions are packetchannel transmissions.
 38. A WLS as recited in claim 25, furthercomprising means for identifying one or more location estimations ashigh priority, and means for preempting scheduling of frequencyresources for high priority location estimations.
 39. A WLS as recitedin claim 25, further comprising means for allowing for periods of timein the sequential tuning process in which random tuning is allowed.